body {
  font-family: Arial, Helvetica, sans-serif;
  background: white;
}

* {
  box-sizing: border-box;
}

/* style the container */
.container {
  position: center;
  background-color: white;
  left: 0;
  border: none;
  margin: 0.1% 0;
  opacity: 0.85;
  display: inline-block;
  text-decoration: none;
  overflow: auto;
  -webkit-transform: translate3d(0,0,0);
} 

/* style inputs */
label,title,link{
  width: 70%;
  padding: 1.0% 1.0%;
  border: none;
  border-radius: 10px;
  margin: 0.5% 0;
  opacity: 0.85;
  display: inline-block;
  font-size: 100%;
  line-height: 100%;
  text-decoration: none; 
}

/* input style */
input {
  padding: 1.0% 1.0%;
  border: 1px solid #4595C9;
  margin: 0.5% 0;
  opacity: 0.85;
  font-weight: normal;
  text-decoration: none;
  color: darkblue;
  cursor: pointer;
}
input:focus {
  border: 2px solid #4595C9;
  outline: 0 none;
}
::placeholder {
  color: darkblue;
}

/* select style */
select {
  padding: 1.0% 1.0%;
  border: 1px solid #4595C9;
  margin: 0.5% 0;
  opacity: 0.85;
  display: inline-block;
  font-weight: normal;
  text-decoration: none;
  color: darkblue;
  cursor: pointer;
}

checkbox {
  border: 1px solid #4595C9;
  border-radius: 10px;
  margin: 0;
  opacity: 0.85;
  display: inline-block;
  font-weight: normal;
  text-decoration: none;
  color: darkblue;
  cursor: pointer;
}

.link{
  position: center;
  width: 100px;
  padding: 14px;
  border: none;
  border-radius: 4px;
  margin: 5px 0;
  opacity: 0.85;
  display: inline-block;
  font-size: 14px;
  line-height: 20px;
  text-decoration: none; 
}


/* style inputs and link buttons */
.btn {
  width: 100%;
  padding: 1%;
  border: none;
  border-radius: 10px;
  margin: 0.25% 0;
  opacity: 1.00;
  display: inline-block;
  line-height: 100%;
  text-decoration: none; /* remove underline from anchors */
}

/* style inputs and link buttons */
.btn-small {
  padding: 1%;
  border: none;
  border-radius: 10px;
  margin: 1% 0;
  opacity: 0.85;
  line-height: 100%;
  text-decoration: none; /* remove underline from anchors */
}

/* style inputs and link buttons */
.btn-link {
  padding: 1.2%;
  border: none;
  border-radius: 0.25%;
  margin: 0.25% 0;
  opacity: 0.85;
  line-height: 2%;
  text-decoration: none; /* remove underline from anchors */
}
//TODO remove text-decoration

/* style inputs and link buttons */
.btn-tiny {
  width: 8%;
  padding: 0.1%;
  border: none;
  border-radius: 10px;
  margin: 0.25% 0;
  opacity: 0.85;
  display: inline-block;
  font-size: 100%;
  line-height: 0.1%;
  text-decoration: none; /* remove underline from anchors */
}
/* style inputs and link buttons */
.link {
  width: 8%;
  padding: 0.1%;
  border: none;
  border-radius: 0.25%;
  margin: 0.25% 0;
  opacity: 0.85;
  display: inline-block;
  font-size: 100%;
  line-height: 0.1%;
  text-decoration: underline; /* remove underline from anchors */
}

input:hover,
.link:hover,
.btn:hover, th {
	color: darkblue;
  opacity: 1;
}

/* style the submit button */
input[type=submit] {
  background-color: #0077cc;
  font-weight: bold;
  color: white;
  cursor: pointer;
}

input[type=submit]:hover {
  background-color: #0066cc;
}

.col {
  margin: auto;
  padding: 0 0.5%;
  margin-top: 0.5%;
}

.col-small {
  float: left;
  width: 50%;
  margin-top: 1%;
  padding: 0 5%;
  display: inline-block;
  vertical-align: middle;
}

/* Clear floats after the columns */
.row:after {
  content: "";
  display: table;
  clear: both;
}

/* top container */
.top-container {
  text-align: left;
  background-color: #4595C9;
  left: 0;
  border-radius: 0 0 1% 1%;
}

/* bottom container */
.bottom-container {
  text-align: center;
  background-color: #4595C9;
  left: 0;
  border-radius: 0 0 1% 1%;
}

/* style the container */
.table {
  text-align: center;
  background-color: #F1FBFB;
  padding: 0.2%;
  border: none;
  border-radius: 10px;
  margin-left: auto;
  margin-right: auto;
  //opacity: 0.85;
  display: inline-block;
  font-size: 90%;
  line-height: 100%;
  text-decoration: none;
} 

table, td{
  border-collapse: collapse;
  border: 0 solid grey;
}

thead {
  display: block; 
  width: 100%; 
  position: sticky;
  top: 0;
  z-index: 1000;
}

tbody {
  display: block; 
  max-height: 100%; 
  max-width: 100%; 
}

th, td {
  padding: 0.50%;
}

tr {
  display: table; 
  width: 100%;
  box-sizing: border-box;
  background-color: #D1EBFA;
}

td {
  text-align: center;
  border-bottom: none;
  border-left: none;
  word-break: break-all;
}

tr:nth-of-type(odd) {
	background-color:white;
}

th {
	color: white;
	cursor: pointer;
	font-weight: bold;
	position: sticky;
	top: 0;
	word-break: normal;
}

table thead th:first-child {
  position: sticky;
  left: 0;
  z-index: 2;
}
table tbody td:first-child {
  position: sticky;
  background: #D1EBFA;
  left: 0;
  z-index: 1;
}

caption {
	width: 100%;
	text-align: center;
	color: maroon;
	font-weight: bold;
}

.badge {
  height: 50px;
  width: 50px;
  text-align: center;
  vertical-align: middle;
  border-radius: 100%;
  background-color: #blue;
}

.dropbtn {
  width: 100%;
  padding: 20px;
  border: node;
  border-radius: 4px;
  margin: 5px 0;
  display: inline-block;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
  text-decoration: none;
  text-align:right; 
  color:white;
  opacity: 0.85;
}

.dropdown {
  position: relative;
  display: inline-block;
  text-align: center;
  float: right;
  width: 25%;
  padding: 0 20px;
  border: none;
  border-radius: 0px 0px 4px 4px;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: transparent;
  color: red;
  z-index: 1;
  float: right;
  font-size: 14px;
  font-weight: bold;
  width: 99%;
  margin: 5px 0;
  padding: 0 20px;
  border: none ;
  border-radius: 0px 0px 4px 4px;
}

.dropdown-content a {
  color: red;
  text-decoration: none;
  display: block;
  text-align: right;
  font-size: 14px;
  font-weight: bold;
  border: none;
  margin: 5px 0;
  width: 99%;
  padding: 0 20px;
  border: none;
  border-radius: 0px 0px 4px 4px;
}

.dropdown-content a:hover {background-color: transparent;}

.dropdown:hover .dropdown-content {display: block; }

.dropdown:hover .dropbtn {background-color: #4595C9;}

.cookie-consent-banner {
  position: fixed;
  bottom: 5%;
  box-sizing: border-box;
  width: 80%;
  margin-left: 8%;
  background-color: #ECEFED;
}

.cookie-consent-banner__inner {
  width: 98%;
}

.cookie-consent-banner__message {
  font-family: "CeraPRO-Regular", sans-serif, arial;
  font-weight: normal;
  color: #536166;
  font-size: 100%;
  text-align: center;
}

//style definitions for profile menu
.action
{
  position: relative;
}

.action .profile
{
  position: relative;
  overflow: hidden;
  cursor: pointer;
  top: 10%;
  margin-right: 0.5%;
  margin-top: 0.6%;
}

.action .profile img
{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.action .menu
{
  position: absolute;
  top: 250%;
  right: 1%;
  //padding: 0.2% 0.5%;
  background: #F8F8FA;
  box-sizing: 0 2% 12% rgba(0, 0, 0, 0.1);
  border-radius: 10%;
  transition: 0.5s;
  visibility: hidden;
  z-index: 1100;
  opacity: 0;
  //border: 2px solid #4595C9;
}
.action .menu.active
{
  top: 105%;
  right: 1.1%;
  visibility: visible;
  opacity: 1;
}

/*
.action .menu::before
{
  content: '';
  position: absolute;
  top: -3%;
  right: 8%;
  width: 10%;
  height: 10%;
  z-index: 1100;
  background: #F1FBFB;
  transform: rotate(45deg);
  //border: 1px solid darkblue;
}
*/
.action .menu h3
{
  width: 75%;
  text-align: center;
  padding: 0% 1%;
  font-weight: 500;
  font-size: 110%;
  color: darkblue;
  line-height: 100%;
  margin-right: 2%;
}

.action .menu h3 span
{
  font-size: 100%;
  color: darkblue;
  font-weight: 400;

}
.action .menu ul li
{
  list-style: none;
  //padding 0.1% 0;
  border-top: 1% solid rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  padding: 0.1% 0.1%;
}
.action .menu ul li img
{
  max-width: 15%;
  //margin-right: 5%;
  opacity: 0.5;
  transition: 0.5s;
}
.action .menu ul li:hover img
{
  opacity: 1;
}
.action .menu ul li a
{
  display: inline-block;
  text-decoration: none;
  color: #4595C9;
  font-size: 100%;
  font-weight: 500;
  transition: 0.5s;
}
.action .menu ul li:hover a
{
  opacity: 2;
  color: darkblue;
}

.meter {
  /* Reset the default appearance */
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;

  /* Applicable only to Firefox */
  background: none;
  background-color: rgba(0, 0, 0, 0.1);
}

.meter::-webkit-meter-bar {
  background: none;
  background-color: rgba(0, 0, 0, 0.1);
}
/* Webkit based browsers */
meter[value="1"]::-webkit-meter-optimum-value { background: red; }
meter[value="2"]::-webkit-meter-optimum-value { background: yellow; }
meter[value="3"]::-webkit-meter-optimum-value { background: orange; }
meter[value="4"]::-webkit-meter-optimum-value { background: green; }

/* Gecko based browsers */
meter[value="1"]::-moz-meter-bar { background: red; }
meter[value="2"]::-moz-meter-bar { background: yellow; }
meter[value="3"]::-moz-meter-bar { background: orange; }
meter[value="4"]::-moz-meter-bar { background: green; }
