* {box-sizing: border-box;}
:root{
    --main-typefont-color:#2b2b2b;
    --main-typefont-color:#dedede;

}

/* Style the navbar */
.topnav {
    overflow: hidden;
    /* background-color: #0000007d; */
    /* margin-bottom: 10; */
    z-index: 21;
    /* position: absolute; */
    width: 100%;
    position: relative;
    box-shadow: 0 0 20px 7px black;


    box-shadow: 0 0 20px 7px #0000004d;
    backdrop-filter: blur(2px);
    border-bottom: 1px solid #ffcccc45;
    background-color: #121212b2;
}
.topnav-top-row{
  contain: content;
}
.header-logo-button{
  /* width: 346px; */
  width: 200px;
  padding: 0px;
  float: left;
  padding: 0px;
}
.topnav-top-row img:hover{
  cursor: pointer;
  background-color: #0000008c;
}
.header-logo-button-small{
  display: none;
}
.topnav-bottom-row{
  /* display: block; */
  overflow: hidden;
  align-items: center;
  align-self: center;
  text-align: center;
  display: flex;
}

.topnav-bottom-row a{
  float: left;
}

/* Navbar links */
.topnav a {
  float: left;
  display: block;
  color: black;
  color: var(--main-typefont-color);
  /* color: white; */
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 18pt;
  font-weight: 400;

  transition-duration: 0.2s;
}



.topnav-top-row a{
  padding: 0px;
}
.topnav-top-row a:hover{
  /* background-color: #0000007a; */
  color: var(--main-typefont-color);
  font-weight: 700;
  text-decoration: underline;
}


/* Active/current link */
.topnav-bottom-row a.active {
  /* background-color: #001e2cc4;
  border: 1px solid #ffff009e;
  color: white; */
  font-weight: bolder;
  padding: 13px 15px;
  text-decoration: underline;
  font-weight: bolder;
  padding: 13px 15px;
}
/* Navbar links on mouse-over */
.topnav-bottom-row a:hover {
  /* background-color: rgb(0 0 0 / 34%);
  color: #fffc00c7;
  font-weight: bolder;
  border: 1px solid #ffff0036;
  padding: 13px 15px; */
  color: var(--main-typefont-color);
  font-weight: 700;
  text-decoration: underline;
}

/* Style the input container */
.topnav-bottom-row .login-container {
  float: right;
}

/* Style the input field inside the navbar */
.topnav input[type=text]  {
  padding: 6px;
  margin-top: 8px;
  font-size: 17px;
  border: none;
  width: 150px; /* adjust as needed (as long as it doesn't break the topnav) */
}
.topnav input[type=password]{
  padding: 6px;
  margin-top: 8px;
  font-size: 17px;
  border: none;
  width: 150px; 
}

/* Style the button inside the input container */
.topnav .login-container button {
  float: right;
  padding: 6px;
  margin-top: 8px;
  margin-right: 16px;
  background: #ddd;
  font-size: 17px;
  border: none;
  cursor: pointer;
}
.topnav-bottom-row .icon{
  display: none;
}
.topnav .login-container button:hover {
  background: #ccc;
}










/*   
################################################   
                  USER            
################################################                  
*/
.topnav-user-container{
  display: flex;
    contain: content;
    float: right;
    flex: 1;
    justify-content: flex-end;
    align-items: center;
    align-content: center;

}
.topnav-user-container:hover{
  /* background-color: rgb(21, 75, 97); */
  cursor: pointer;
}
.topnav-user-username{
  font-family: 'Roboto';
  font-weight: 400;
  font-size: 25px;
  margin: auto;
}
.topnav-user-container p{
  margin: auto;
}
.topnav-user-icon{
  contain: strict;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  /* padding: 10px; */
  margin: 14px;
}

.topnav-user-container a{
  padding: 0px;
  margin: 0px;
  font-size: medium;
  display: flex;
}
.topnav-user-container a:hover{
  padding: 0px;
  background-color: transparent;
  border: 0px;
}

@media screen and (max-width: 600px) {
  .topnav a:not(:first-child) {display: none;}
  .topnav a.icon {
    float: right;
    display: block;
  }
}
/* Add responsiveness - On small screens, display the navbar vertically instead of horizontally */
@media screen and (max-width: 600px) {
  .topnav .login-container {
    float: none;
  }
  .topnav a, .topnav input[type=text], .topnav .login-container button {
    /* float: none; */
    display: block;
    text-align: left;
    /* width: 100%; */
    margin: 0;
    padding: 14px;
  }
  .topnav input[type=text] {
    border: 1px solid #ccc;
  }
}
@media screen and (max-width: 600px) {
  .topnav-bottom-row a:not(:first-child) {display: none;}
  .topnav-bottom-row a.icon {
    float: right;
    display: block;
  }
}
@media screen and (max-width: 600px) {
  .topnav-bottom-row{
    /* display: none; */
  }
  .topnav a.active{
    color: #eaff55;
    padding: 14px 16px;
    border: 0px;
    background-color: transparent;
  }
  .topnav-bottom-row .icon{
    display: block;
  }
  .topnav-top-row{
    display: flex;
    height: 75px;
  }
  .topnav-top-row img{
    /* display: none; */
  }
  #header-logo-button-small{
    display: block;
    max-width: 45px;
    max-height: 75px;
  }
  #header-logo-button-big{
    display: none;
  }
  .topnav-bottom-row.responsive {position: relative;}
  .topnav-bottom-row.responsive .icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .topnav-bottom-row.responsive a {
    float: none;
    display: block;
    text-align: left;
  }

  .topnav-user-icon{
    width: 35px;
    height: 35px;
  }
  .topnav-user-container{
    font-size: 14px;
  } 

}
