* {
   box-sizing: border-box;
   margin: 0;
   padding: 0;
}

html, body {
   height: 100%;
   font-family: "Open Sans", Helvetica, Arial, sans-serif;
   background-color: white;
}

.navbar-fixed-top {
   position: sticky !important;
}

.navbar {
   box-shadow: none !important;
}

#main > #content > #overlay > .container {
   padding: 0;
}

.container {
   display: flex;
   flex-direction: row;
   background-color: white;
}

.container > div {
   background-color: rgb(255, 255, 255);
   padding: 15px;
   align-self: center;
}

.container > div.header {
   grid-area: header;
   text-align: center;
   background-color: #00a1e1;
   color: white;
}

.container > div.menu {
   position: fixed;
   z-index: 1000;
   height: 100%;
   bottom: 0;
   top: 10px;
   font-size: 15px;
   left: 0;
   width: 400px;
   min-height: 100%;
   padding: 80px 15px 15px 15px;
   background-color: #ffffff;
   color: #666;
   box-shadow: 7px 0 60px rgba(0,0,0,0.05);
   display: flex;
   flex-direction: column;
}

#contentDisplay {
   margin-left: 400px;
}

div.menu .buttonsMenu {
   padding-top: 30px;
   text-align: center;
}

div.menu .setDataButtons {
   width: 120px;
   border: none;
   display: inline-block;
   color: #FFF;
   padding: 6px 12px;
   background-color: #00a1e1;
   text-decoration: none;
}

.menu button {
   margin: 5px 0;
   padding: 10px;
   width: 50%;
   background-color: #00a1e1;
   color: white;
   border: none;
   cursor: pointer;
   text-align: center;
   z-index: 10;
   border-radius: 4px;
}

.menu button:hover {
   background-color: #00a1e1;
}

.sortbutton {
   padding: 30px;
}

.container > div.content {
   grid-area: content;
   width: 100%;
}

.container > div.footer {
   grid-area: footer;
}

.graphs-remote-graphs {
   display: flex;
   flex-direction: column;
   margin: 0 auto;
   width: 100%;
   height: 100%;
   min-height: 100%;
   padding-block: initial;
   overflow-y: auto;
}

.graphs-remote-graphs-graph {
   cursor: pointer;
   transition: all 300ms;
   box-shadow: 0 0.46875rem 2.1875rem rgba(4, 9, 20, 0.03), 0 0.9375rem 1.40625rem rgba(4, 9, 20, 0.03), 0 0.25rem 0.53125rem rgba(4, 9, 20, 0.05), 0 0.125rem 0.1875rem rgba(4, 9, 20, 0.03);
   background-color: #00a1e1;
   color: white;
   padding: 5px 15px 5px 15px;
   border-radius: 3px;
   text-align: left;
   display: flex;
   justify-content: center;
   padding-block: initial;
   flex-direction: column;
   margin-bottom: 10px;
   /*width: 350px;*/
}

.graphs-remote-graphs-graph h2 {
   font-size: 18px;
   font-weight: 300;
}

.graphs-remote-graphs-graph h4, .graphs-remote-graphs-graph span {
   font-size: 14px;
   font-weight: 300;
   line-height: 1.1;
   margin: 5px 0;
}

.graphs-remote-graphs-graph h4 {
   width: 350px;
}

.graphs-remote-graphs-graph:first-child {
   margin-top: 0;
}

#button {
   display: block;
   margin: 20px auto;
   padding: 10px 30px;
   background-color: #eee;
   border: solid #ccc 1px;
   cursor: pointer;
}

.loader {
   position: absolute;
   right: 48%;
   top: 50%;
   width: 48px;
   height: 48px;
   border: 5px solid #FFF;
   border-bottom-color: #00A1E1;
   border-radius: 50%;
   background-color: transparent;
   box-sizing: border-box;
   animation: rotation 1s linear infinite;
}

@keyframes rotation {
   0% {
      transform: rotate(0deg);
   }
   100% {
      transform: rotate(360deg);
   }
}

.graph-list {
   cursor: pointer;
   transition: all 300ms;
   padding-right: 15px;
   border-radius: 3px;
   overflow: scroll;
   overflow-x: hidden;
}

#hidden-graph-list {
   cursor: pointer;
   transition: all 300ms;
   border-radius: 3px;
   overflow: scroll;
   overflow-x: hidden;
   height: 430px;
   padding-bottom: 100px;
}

.graphs-remote-graphs-graph {
   margin-top: 10px;
   margin-bottom: 0 !important;
}

#filter {
   height: 40px;
   width: 200px;
   transition: all 0.5s ease-in-out;
   padding: 8px;
   position: relative;
   vertical-align: top;
   border: 1px solid #dddddd;
   background-color: #ffffff;
   display: inline-block;
   color: #626262;
   outline: none;
}

.content {
   /*start op none voor de loading screen*/
   display: none;
   height: 600px;
   width: 1150px;
}

#myChart {
   position: relative;
   width: 800px;
   height: 575px;
}

.circle {
   background-color: white;
   border-radius: 50%;
   height: 2rem;
   width: 2rem;
}

#hide-button:hover {
   color: #CDCDCD;
}

.fa.fa-star.fav-star.fas {
   color: rgb(255, 215, 0);;
}

.fa.fa-star.fav-star.fas:hover {
   color: #ffffff;
}

.fa.fa-star.fav-star.far:hover {
   color: rgb(255, 215, 0);;
}

#login {
   display: flex;
   flex-direction: row;
   margin: 0;
   padding: 0;
   background: url('../images/bg_tsa_delft.jpg') no-repeat fixed center top / cover;
}

#login, #login > div {
   height: 100vh;
   width: 100vw;
}

#login > div {
   display: flex;
   align-items: center !important;
   justify-content: end !important;
}

#login .login-right {
   background-color: #ffffff;
   height: 100vh;
   width: 45vw;
   display: flex;
   align-content: center;
   justify-content: center;
   padding: 0 20px;
}

.login-form {
   display: flex;
   justify-content: center;
   flex-direction: column;
   width: 100%;
   max-width: 525px;
}

@media (max-width: 1400px) {
   .login-form {
      max-width: 450px;
   }
}

@media (max-width: 1200px) {
   .login-form {
      max-width: 375px;
   }
}

.login-form p {
   text-align: left;
}

.login-form p:last-child {
   margin-bottom: 20px;
}

.login-form input {
   width: 100%;
   margin-bottom: 10px;
}

.login-form button {
   background-color: #00a1e1;
   margin-top: 10px;
   margin-bottom: 16px;
   width: 100%;
   max-width: 165px;
   height: 40px;
}

@media (max-width: 640px) {
   #login .login-left {
      display: none;
   }

   #login .login-right {
      max-width: unset;
      margin: 15px;
      border-radius: 4px;
   }
}

.login-form .form {
   max-width: 550px;
}

#login .intro img {
   max-width: 100%;
}

#login .buttons {
   margin-top: 25px;
}

#login .buttons div {
   display: flex;
   align-items: center;
   justify-content: space-between;
}

.login-header {
   display: flex;
   flex-direction: row;
}

.input {
   transition: all 0.5s ease-in-out;
   padding: 8px;
   position: relative;
   vertical-align: top;
   border: 1px solid #dddddd;
   background-color: #ffffff;
   display: inline-block;
   color: #626262;
   outline: none;
   width: 50%;
}

.li {
   color: red;
}

.new-icon {
   position: absolute;
   top: 5px;
   right: 5px;
   font-size: 1.5rem;
   color: white;
   border-radius: 2px;
   padding: 3px 6px;
   z-index: 10;
   cursor: default;
}