/* Overall setting */

body {
	font-family: Arial, Helvetica, sans-serif;
    color: #1d2977;
}

table {
    border-collapse: collapse;
 }


input:hover {
    border-color:skyblue;
    background-color: azure;
}

input:focus {
    background-color: azure;
}

/* Top navigation bar */

.topnav {
	/* background-color: #333; */
	vertical-align: top;
    padding: 10px;
}

.logo {
	width: 100px;
}

.headertext {
    color: #1d2977;
    font-size: 24px;
    font-weight: bold;
    display: inline-block;
    vertical-align: top;
	padding-left: 20px;
}

/* Overzicht */

.divoverzicht {
    padding: 0;
    margin: auto;
    text-align: center;
}

.divtabellen {
    padding: 0;
    margin: auto;
    text-align: center;
}

.bigblue, .biggreen, .bigyellow, .bigtext {
    font-family:arial, helvetica, sans-serif;
    font-weight:bold;
}

.bigblue{
    color: #0000CC;
    }

.biggreen{
    color: #00CC00;
    }

.bigyellow{
    color: #CCCC00;
    }
	
.imgcontainer {
	position: relative;
	text-alignment: center;
	color: maroon;
	width: 280px;
}

.huisje {
	width: 100%;
}

.imgbottomleft {
	position: absolute;
	bottom: 8px;
	left: 12px;
    font-weight:bold;
    font-size: 16px;
}

.imgbottomright {
	position: absolute;
	bottom: 8px;
	right: 12px;
    font-weight:bold;
    font-size: 16px;
}

/* Buttonrow */

.buttonprogresscontainer {
    width: 100%;
    margin: auto;
	text-align: center;
}

/* Buttonrow */

.buttonrow {
    width: 100%;
    margin: auto;
	text-align: center;
    display: inline-block;
}

.btn {
    background-color: steelblue;
    color: white;
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 0px;
    padding-right: 0px;
    font-size: 16px;
    border: none;
    cursor: pointer;
    vertical-align: top;
    width: 18%;
}

.btnsel {
    background-color: orange;
    color: white;
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 0px;
    padding-right: 0px;
    font-size: 16px;
    border: none;
    cursor: pointer;
    vertical-align: top;
    width: 18%;
}

.whitebtn {
    /* background-color: #4CAF50; */
    /* color: white; */
    padding: 16px;
    font-size: 16px;
    border: none;
    cursor: pointer;
	vertical-align: top;
    display: inline-block;
}

/* Progress Bar */

#progressbar{
    width:94%;
    height:2px;
    background:white;
    padding: 2px;
	margin: auto;
}

#progress{
    width:100%;
    height:2px;
    background:lightgreen;
}

/* Content starts here */

div.content {
    clear: both;
    padding: 16px;
}

.centereddata { 
    margin: auto;
	text-align: center;
}

/* Centralized login form */

.logincenter {
    margin: auto;
	margin-top: 30px;
    width: 300px;
}


/* General form stuff */

div.form{
	/* width: 260px; */
	padding: 15px;
	border: 2px solid gray;
	border-radius: 10px;
	font-family: raleway;
	margin-bottom: 0px;
}

div.form input[type=text],input[type=password],input[type=number],select {
	width: 100%;
	/* height: 40px; */
	padding: 5px 0px;
	margin-bottom: 10px;
	margin-top: 5px;
	border: 2px solid #ccc;
	color: #4f4f4f;
	font-size: 16px;
	border-radius: 5px;
}

input[type=checkbox] {
	/* width: 250px; */
	/* height: 40px; */
	padding: 5px;
	margin-bottom: 10px;
	margin-top: 5px;
	border: 2px solid #ccc;
	color: #4f4f4f;
	font-size: 16px;
	border-radius: 5px;
	transform: scale(1.5);
}

label {
	color: #464646;
	text-shadow: 0 1px 0 #fff;
	font-size: 16px;
	font-weight: bold;
}

/* The snackbar - position it at the bottom and in the middle of the screen */
#snackbar {
    visibility: hidden; /* Hidden by default. Visible on click */
    min-width: 250px; /* Set a default minimum width */
    margin-left: -125px; /* Divide value of min-width by 2 */
    background-color: #333; /* Black background color */
    color: #fff; /* White text color */
    text-align: center; /* Centered text */
    border-radius: 2px; /* Rounded borders */
    padding: 16px; /* Padding */
    position: fixed; /* Sit on top of the screen */
    z-index: 1; /* Add a z-index if needed */
    left: 50%; /* Center the snackbar */
    bottom: 30px; /* 30px from the bottom */
}

/* Show the snackbar when clicking on a button (class added with JavaScript) */
#snackbar.show {
    visibility: visible; /* Show the snackbar */
    /* Add animation: Take 0.5 seconds to fade in and out the snackbar. 
   However, delay the fade out process for 2.5 seconds */
   -webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
   animation: fadein 0.5s, fadeout 0.5s 2.5s;
}

/* Animations to fade the snackbar in and out */
@-webkit-keyframes fadein {
    from {bottom: 0; opacity: 0;} 
    to {bottom: 30px; opacity: 1;}
}

@keyframes fadein {
    from {bottom: 0; opacity: 0;}
    to {bottom: 30px; opacity: 1;}
}

@-webkit-keyframes fadeout {
    from {bottom: 30px; opacity: 1;} 
    to {bottom: 0; opacity: 0;}
}

@keyframes fadeout {
    from {bottom: 30px; opacity: 1;}
    to {bottom: 0; opacity: 0;}
}


/* Opmaak voor selectors */

input.minimal {
	width: 100%;
	height: 40px;
	padding: 0px;
	margin-bottom: 0px;
	margin-top: 0px;
	border: none;
	font-size: 16px;
}

textarea.minimal {
    width: 330px;
	/* height: 40px; */
	padding: 0px;
	margin-bottom: 0px;
	margin-top: 0px;
	border: none;
	font-size: 16px;
	font-family: Arial; */
}

span.minimal {
    width: 260px;
	/* height: 40px; */
	padding: 0px;
	margin-bottom: 0px;
	margin-top: 0px;
	border: none;
	font-size: 16px;
	font-family: Arial; */
}

/* Nice buttons */

input[type=button]{
	font-size: 16px;
	background: linear-gradient(#ffbc00 5%, #ffdd7f 95%);
	border: 1px solid #e5a900;
	color: #4E4D4B;
	font-weight: bold;
	cursor: pointer;
	width: 100%;
	border-radius: 5px;
	padding: 10px 0;
	outline:none;
}

input[type=button]:hover{
	background: linear-gradient(#ffdd7f 5%, #ffbc00 95%);
}

/* Left / right dividers */

td.leftarea {
	/* width: 220px; */
	vertical-align: top;
}

td.rightarea {
	/* width: 100%; */
	/* height: 100%; */
	vertical-align: top;
    padding: 15px;
}

/* Image as button */

.butimg {
	width: 30px;
}

/* Table generals */

.activerow {
    background-color: white;
}
.inactiverow {
    background-color: lightgrey;
}

/* Admin table stuff */

table.admintable th{
    background-color: coral;
	padding: 5px;
}

table.admintable td {
	padding: 5px;
}

/* User table stuff */

.usertable {
	margin: auto;
	font-size: 12px;
	padding: 6px;
}

.usertable th {
    background-color: lightblue;
}

.usertable th td {
	padding: 5px;
}

/* Group table stuff */

.grouptable {
	margin: 4px 4px;
	font-size: 12px;
	width: 98%;
}

.grouptable th {
    background-color: lightblue;
    text-align: left;
}

.grouptable th td {
	padding: 5px;
}

.divider {
	border-bottom: 1px solid orange;
}

/* Popup stuff */

div#popupBox {
    display: none;
    position: absolute;
    /* max-width: 400px; */
    top: 50%;
    left: 50%;
    right: -30%;
    transform: translate(-50%, -50%);
    z-index: 2;
	
    background: white;
	border: 2px solid gray;
	border-radius: 10px;
	font-family: raleway;
	padding: 10px;
}
div#backgroundDarkener {
    background: gray;
    display: none;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0.6;
}

/* todo */



h1 {
    color: dodgerblue;
}

h2{
	color: salmon;
	margin: -6px 0px;
	text-align:center;
}

.waarde_table {
    margin: auto;
}

.waarde_index {
    background-color: salmon;
}

.waarde_data {
    padding-right: 16px;
}

table#topnav {
    background-color: moccasin;
}
 
.alignleft {
	float: left;
}
.aligncenter {
	float: center;
}
.alignright {
	float: right;
}

div.container{
    width: 100%;
    font-size: 12px;
    overflow: hidden; /* contain floated elements */
	margin-bottom: 10px;
	margin-top: 5px;
	border: 2px solid #ccc;
	color: #4f4f4f;
	font-size: 16px;
	border-radius: 5px;
}
div.left {
    float: left; 
    width: 18%;
}
div.center { 
    margin: auto;
    /*
    float: left;
    width: 30%;
	margin-left: 5px;
	margin-right: 5px;
	*/
}
div.right{
    float: left;
    width: 50%;
}

div.outer{
    display: inline-block;
}
div.outer::after{
    display: block;
}

div.inner{
    float: left;
	margin-right: 5px;
}

/* Charts */

.chart-container {
	position: relative;
	height:100%; width:100%;
}

canvas.o_chart {
	margin-left : 50px;
	width : 400px;
	height : 400px;
}


div.graph{
	/* width: 260px; */
	/* padding: 15px; */
	/* border: 2px solid gray; */
	/* border-radius: 10px; */
	font-family: raleway;
	margin: auto;
}



/* =============================== */
/* Rudhen text 1                   */
/* =============================== */

.rudhentext {
  /* position: absolute; */
  /* width: 450px; */
  /* left: 50%; */
  margin-left: -80px;
  /* height: 40px; */
  /* top: 50%; */
  /* margin-top: -20px; */
	text-align: center;
	padding: 40px;
	font-size: 16px;
}

p {
  display: inline-block;
  vertical-align: top;
  margin: 1px;
}

.rudhenword {
  position: absolute;
  /* width: 220px; */
  opacity: 0;
}

.letter {
  display: inline-block;
  position: relative;
  float: left;
  transform: translateZ(25px);
  transform-origin: 50% 50% 25px;
}

.letter.out {
  transform: rotateX(90deg);
  transition: transform 0.32s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.letter.behind {
  transform: rotateX(-90deg);
}

.letter.in {
  transform: rotateX(0deg);
  transition: transform 0.38s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.wisteria {
  color: #8e44ad;
}

.belize {
  color: #2980b9;
}

.pomegranate {
  color: #c0392b;
}

.green {
  color: #16a085;
}

.midnight {
  color: #2c3e50;
}


/* =============================== */
/* Rudhen text 2                   */
/* =============================== */


    .rottext {
      font-weight: 600;
      letter-spacing: 1.7px;
      text-transform: uppercase;
      font-family: 'Kanit';
      font-size: 17px;
      fill: #111;
      text-shadow: 2px 0px #ccc;
    }

    #rotatingText {
      animation-name: rotate-circle;
      animation-duration: 10s;
      animation-timing-function: linear;
      animation-iteration-count: infinite;
    }

    @keyframes rotate-circle {
      to {
        transform: rotate(1turn);
      }
    }

    .rotmain {
      display: grid;
      align-items: center;
      justify-items: center;
    }

    .rotmain img {
      position: absolute;
    }

    .rotmain img {
      position: absolute;
      /* animation-name: rotate-circle; */
      /* animation-direction: reverse; */
      /* animation-duration: 5s; */
      /* animation-timing-function: linear; */
      /* animation-iteration-count: infinite; */

      /* filter: drop-shadow(0px 0px 5px #333); */
    }






/* ============================================================ */
/* small 400x400												*/
/* ============================================================ */

@media (max-width: 400px) and (max-height: 400px) {
    body { font-size:10px; }

	.topnav { padding-top: 4px; padding-bottom: 4px; }

	.logo { width: 60px; }
	.headertext { font-size: 20px; padding-left: 10px; }
	.btn { padding-top: 8px; padding-bottom: 8px; }
	.btnsel { padding-top: 8px; padding-bottom: 8px; }

	.logincenter { margin-top: 0px; }
	h2 { padding: 8px 10px; }

	div.content { padding: 8px; }
	.centereddata { display: flex; }
	/* .divoverzicht { padding: 0px; } */
	/* .divtabellen { padding: 16px; } */

	.usertable { font-size: 11px; padding: 2px; }
	.usertable th td { padding: 4px; }

	.grouptable { font-size: 10px; padding: 2px; }
	.grouptable th td { padding: 4px; }

    .bigblue, .biggreen, .bigyellow, .bigtext { font-size:26px; padding-right:8px; }

	.imgcontainer { width: 100%; }

    .header { display: block; }
    .bigblue { display: inline-block; }
    .biggreen { display: inline-block; }

	.huisje { width: 100%; }

	div.graph { display: inline-block; }

}


/* ============================================================ */
/* small portrait 400x800 (San=360x592)							*/
/* ============================================================ */

@media (max-width: 365px) and (min-height: 400px) {
    body { font-size:12px; }

	.logo { width: 80px; }
	.headertext { font-size: 20px; padding-left: 10px; }

	div.content { padding: 8px; }
	/* .divoverzicht { padding: 10px; } */
	/* .divtabellen { padding: 10px; } */

	.usertable { font-size: 16px; }
	.usertable th td { padding: 4px; }

	.grouptable { font-size: 10px; }
	.grouptable th td { padding: 4px; }

    .bigblue, .biggreen, .bigyellow, .bigtext { font-size:30px; padding-right:4px; }

	.imgcontainer { width: 85%; display: block; margin: auto; }

    .header { display: block; }
    .bigblue { display: inline-block; }
    .biggreen { display: inline-block; }
}

/* ============================================================ */
/* small portrait 400x800 (Ruud=384x728)						*/
/* ============================================================ */

@media (max-width: 400px) and (min-height: 700px) {
    body { font-size:13px; }

	.logo { width: 80px; }
	.headertext { font-size: 20px; padding-left: 10px; }

	div.content { padding: 8px; }
	.divoverzicht { padding: 10px; }
	.divtabellen { padding: 10px; }

	.usertable { font-size: 16px; }
	.usertable th td { padding: 4px; }
	.usertable { margin-top: 20px; }

	.grouptable { font-size: 12px; }
	.grouptable th td { padding: 4px; }

    .bigblue, .biggreen, .bigyellow, .bigtext { font-size:30px; padding-right:4px; }

	.imgcontainer { width: 90%; display: block; margin: auto; }

    .header { display: block; }
    .bigblue { display: inline-block; }
    .biggreen { display: inline-block; }
}


/* ============================================================ */
/* small landscape 800x400 (San=672x280)						*/
/* ============================================================ */

@media (min-width: 400px) and (max-height: 290px) {
    body { font-size:12px; }

	.topnav { padding-top: 4px; padding-bottom: 4px; display: flex; justify-content: space-around; }

	.logo { width: 80px; }
	.headertext { font-size: 20px; }
	/* .buttonrow { width: 45%; margin-right: 0; } */
	.buttonprogresscontainer { width: 45%; margin-right: 0; }
	.btn { padding-top: 8px; padding-bottom: 8px; }
	.btnsel { padding-top: 8px; padding-bottom: 8px; }

	.logincenter { margin-top: 0px; }
	h2 { padding: 8px 10px; }

	div.content { padding: 10px; }
	.centereddata { display: flex; margin: 10px 20px; }
	/* .divoverzicht { width: 45%; padding: 00px; display: inline-block; } */
	/* .divtabellen { padding: 0px; display: inline-block; vertical-align: top; } */
	.divoverzicht { width: 45%; }

	.usertable { font-size: 14px; }
	.usertable th td { padding: 4px; }

	.grouptable { font-size: 10px; }
	.grouptable th td { padding: 4px; }

    .bigblue, .biggreen, .bigyellow, .bigtext { font-size:30px; padding-left:0px; }

	.imgcontainer { width: 70%; }

    .header { display: inline-block; vertical-align: middle; max-width: 18vw; }
    .bigblue { display: block; }
    .biggreen { display: block; }

	div.graph { display: inline-block; }
}



/* ============================================================ */
/* small landscape 800x400 (Ruud=786x304)						*/
/* ============================================================ */

@media (min-width: 700px) and (max-height: 400px) {
    body { font-size:13px; }

	.topnav { padding-top: 4px; padding-bottom: 4px; display: flex; justify-content: space-around; }

	.logo { width: 80px; }
	.headertext { font-size: 20px; }
	/* .buttonrow { width: 45%; margin-right: 0; } */
	.buttonprogresscontainer { width: 45%; margin-right: 0; }
	.btn { padding-top: 8px; padding-bottom: 8px; }
	.btnsel { padding-top: 8px; padding-bottom: 8px; }

	.logincenter { margin-top: 0px; }
	h2 { padding: 8px 10px; }

	div.content { padding: 10px; }
	.centereddata { display: flex; margin: 10px 20px; }
	/* .divoverzicht { width: 45%; padding: 00px; display: inline-block; } */
	/* .divtabellen { padding: 0px; display: inline-block; vertical-align: top; } */
	.divoverzicht { width: 45%; }

	.usertable { font-size: 14px; }
	.usertable th td { padding: 4px; }

	.grouptable { font-size: 11px; }
	.grouptable th td { padding: 4px; }

    .bigblue, .biggreen, .bigyellow, .bigtext { font-size:30px; }

	.imgcontainer { width: 60%; }

    .header { display: inline-block; vertical-align: middle; max-width: 18vw; }
    .bigblue { display: block; }
    .biggreen { display: block; }

	div.graph { display: inline-block; }
}


/* ============================================================ */
/* large 800x800												*/
/* ============================================================ */

@media (min-width: 400px) and (min-height: 400px) {
    body { font-size:16px; }

	.logo { width: 100px; }

	div.content { padding: 16px; }
	/* .divoverzicht { padding: 20px; } */
	/* .divtabellen { padding: 20px; } */

	.usertable { font-size: 20px; }
	.usertable th td { padding: 5px; }

	.grouptable { font-size: 16px; }
	.grouptable th td { padding: 5px; }

    .header { display: block; }
    .bigblue, .biggreen, .bigyellow, .bigtext { font-size:60px; padding-right:10px; }

	.imgcontainer { width: 300px; display: block; margin: auto; }

    .header { display: block; }
    .bigblue { display: inline-block; }
    .biggreen { display: inline-block; }
}



@media (min-width: 750px) {
}

@media (max-width: 750px) {
}

