/* Algemeen */ 
* {
	box-sizing: border-box;
	font-size: 1rem;
}

html,body {
	height: 100%;
}
  
body {
	background-color: #ffffff;
	padding: 0px;
	margin: 0px;
}

h1,h2,h3 {
	text-transform: uppercase;
	color: rgba(221,87,2,1);
	font-weight: 800;
}

h1 {
	font-size: 2rem;
}

.grid-container > div.menu, div.content {
	font: normal 1rem Arial, Helvetica, sans-serif;
	padding: 10px;
}

/* Header */
.grid-container > div.header {
	grid-area: header;
	background-color:  rgba(221,87,2,1);
	padding: 5px;
	color: rgba(255,255,255,1);
	height: 100%;
	display: flex;
	overflow: hidden;
	vertical-align: text-bottom;
}

.grid-container > div.header > div.title {
	font: normal small-caps bold 2rem "Lucida Sans", sans-serif;
	padding: 5px;
	height: 100%;
	flex-grow: 1;
	vertical-align: text-bottom;
	font-weight: 900;
}

.grid-container > div.header > div.subtitle {
	text-align: right;
	font: normal bold 2rem "Lucida Sans", sans-serif;
	padding: 5px;
	vertical-align: text-bottom;
	flex-grow: 1;
	overflow: hidden;
	font-weight: 900;
}

/* Content */
.grid-container > div.content {
	grid-area: content;
	color: rgba(40,58,76,1);
	font: normal 1rem Arial, Helvetica, sans-serif;
	padding: 10px;
}

.grid-container > div.content .message {
	color: rgba(221,87,2,1);
	font-weight: bold;
}

.grid-container > div.content .fa-backward,.fa-forward,.fa-grip-lines-vertical {
	font-size: 2rem;
}

.grid-container > div.content table {
	border: 2px solid rgba(192,192,192,1);
	border-radius: 5px;
}

.grid-container > div.content th, td {
	/* border: 1px solid rgba(40,58,76,1);
	border-collapse: collapse; */
	padding: 10px;
	vertical-align: top;
	white-space: nowrap;
}

.grid-container > div.content th {
	background-color: rgba(96,133,152,1);
	color: rgba(255,255,255,1);
	/* border-radius: 5px 5px 0px 0px; */
}

.grid-container > div.content th:first-child {
	border-radius: 5px 0 0 0;
}

.grid-container > div.content th:last-child {
	border-radius: 0 5px 0 0;
}

.grid-container > div.content tr:last-child td:first-child {
	border-radius: 0 0 0 5px;
}

.grid-container > div.content tr:last-child td:last-child {
	border-radius: 0 0 5px 0;
}

tbody tr:nth-child(odd) td {
	background-color: rgba(40,58,76,0.06);
	color: rgba(40,58,76,11);
  }

.grid-container > div.content fieldset {
	border: 2px solid rgba(192,192,192,1);
	border-radius: 5px;
	padding: 20px;
}

.grid-container > div.content a {
	color: rgba(221,87,2,1);
	border: 2px solid rgba(255,255,255,0);
	border-radius: 5px;
}

.grid-container > div.content a:hover { color: rgba(40,58,76,1); }

.grid-container > div.content input[type=text],
.grid-container > div.content input[type=email],
.grid-container > div.content input[type=password],
.grid-container > div.content select,
.grid-container > div.content textarea{
	width: 100%;
	padding: 6px;
	border: 2px solid rgba(192,192,192,1);
	border-radius: 5px;
	box-sizing: border-box;
	resize: vertical;
	font: normal 1rem Arial, Helvetica, sans-serif;
}

.grid-container > div.content input[type=number] {
	padding: 6px;
	border: 1px solid rgba(192,192,192,1);
	border-radius: 5px;
	box-sizing: border-box;
	resize: vertical;
	font: normal 1rem Arial, Helvetica, sans-serif;
}

.grid-container > div.content input[type=text]:focus,
.grid-container > div.content input[type=email]:focus,
.grid-container > div.content input[type=password]:focus,
.grid-container > div.content input[type=number]:focus,
.grid-container > div.content input[type=submit]:focus,
.grid-container > div.content a:focus {
	border: 2px solid rgba(221,87,2,1);
	border-radius: 5px;
	outline: none;
}

.grid-container > div.content input[type=submit] {
	background-color:  rgba(96,133,152,1);
	color: white;
	padding: 8px 20px;
	border: 2px solid rgba(96,133,152,1);
	border-radius: 5px;
	cursor: pointer;
	float: left;
	margin-top: 6px;
	width: 200px;
}

.grid-container > div.content input[type=submit]:hover {
	background-color: rgba(40,58,76,1);
}

.grid-container > div.content input[type="file"]::file-selector-button {
	background-color: rgba(96,133,152,1);
	padding: 8px 20px; 
	margin: 10px;
	width: 200px;
	color: white;
	border: 2px solid rgba(96,133,152,1);
	border-radius: 5px;
	cursor: pointer;
}

.grid-container > div.content input[type="file"]::file-selector-button:hover {
	background-color: rgba(40,58,76,1);
}

.grid-container > div.content input[type=submit]:disabled {
	color: rgba(192,192,192,1);
	cursor: not-allowed;
}

/* Checkbox */
/* The container */
.grid-container > div.content .container {
	display: block;
	position: relative;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

/* Hide the browser's default checkbox */
.grid-container > div.content .container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

/* Create a custom checkbox */
.grid-container > div.content .checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 20px;
	width: 20px;
	background-color: rgba(40,58,76,1);
}

/* On mouse-over, add a darker background color */
.grid-container > div.content .container:hover input ~.checkmark {
	background-color: rgba(40,58,76,0.06);
}

.grid-container > div.content .container:hover input ~.checkmark:after {
	left: 6px;
	top: 2px;
	width: 5px;
	height: 10px;
	border: solid rgba(40,58,76,1);
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	display: block;
}

/* When the checkbox is checked, add a lighter background color */
.grid-container > div.content .container input:checked ~ .checkmark {
	background-color: rgba(96,133,152,1);
}


/* Create the checkmark/indicator (hidden when not checked) */
.grid-container > div.content .checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.grid-container > div.content .container input:checked ~.checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.grid-container > div.content .container .checkmark:after {
	left: 6px;
	top: 2px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* End of checkbox styling */

.grid-container > div.content label.metrics-selector {
	border: 1px solid rgba(40,58,76,1);
	border-radius: 5px;
	padding: 3px 10px 3px 10px;
}

.grid-container > div.content input[type="radio"] {
	/* Add if not using autoprefixer */
	-webkit-appearance: none;
	appearance: none;
	/* For iOS < 15 to remove gradient background */
	background-color: #fff;
	/* Not removed via appearance */
	margin: 0;
}

.grid-container > div.content input[type="radio"]:checked + label{
	background-color: rgba(40,58,76,1);
	color: rgba(255,255,255,1);
} 

.grid-container > div.content label {
	padding: 12px 12px 12px 0;
	display: inline-block;
	font: normal 1rem Arial, Helvetica, sans-serif;
}

.grid-container > div.content > .row::after {
	content: "";
	clear: both;
	display: table;
}

.grid-container > div.content div.metrics-container {
	height: 100%;
	float: left;
	margin-right: 10px;
	font-weight: bold;
}

.grid-container > div.content div.metric {
	float: left;
	margin: 4px 200px 4px 4px;
	text-transform:uppercase;
	text-align:center;
	border:1px solid grey;
	color: rgba(255,255,255,1);
	background-color: rgba(40,58,76,1);
	padding:2px;
	margin-right:5px;
	border-radius: 5px;
	width: 50px;
}

.grid-container > div.content div.value,
.grid-container > div.content div.value-active {
	float: left;
	border: 1px solid grey;
	padding: 2px;
	margin: 4px;
	border-radius: 5px;
}

.grid-container > div.content div.value-active {
	background-color: rgba(221,87,2,1);
	color: rgba(255,255,255,1);
}

/* Menu */
.grid-container > div.menu {
	grid-area: menu;
}

.grid-container > div.menu input,
.grid-container > div.menu > label {
	display: none;
}

.grid-container > div.menu > ul.dropdown,
.grid-container > div.menu > ul.nav {
	transition:max-height 0.5s ease-out;
}

.grid-container > div.menu #toggle-nav:checked ~ ul.nav,
.grid-container > div.menu #dropdown-check:checked ~ ul.dropdown {
	display: block;
	transition: max-height 0.5s ease-in;
}

.grid-container > div.menu input:checked ~ label:after {
	border-top:0 solid rgba(40,58,76,1);
	border-bottom:4px solid rgba(40,58,76,1);
	transition:border-top, border-bottom;
}

.grid-container > div.menu input:checked ~ label:hover:after {
	border-top:0 solid rgba(255,255,255,1);
	border-bottom:4px solid rgba(255,255,255,1);
}

.grid-container > div.menu > ul {
	background-color:  rgba(255,255,255,1);
	list-style: none;
	margin: 0px;
	padding: 0;
	width: 100%;
}

.grid-container > div.menu > ul > li,
.grid-container > div.menu > ul > label {
	color: rgba(255,255,255,1);
	padding: 0px;
	border: none;
	border-radius: 5px;
	display: block;
	width: 100%;
	margin-bottom: 7px;
	background-color: rgba(96,133,152,1);
	float: left;
	position: relative;
	cursor: pointer;
}

.grid-container > div.menu > ul > label,
.grid-container > div.menu > ul > li > a {
	padding: 8px;
}

.grid-container > div.menu > ul > label:after{
	content:"";
	position:absolute;
	display:block;
	top:50%;
	right:10px;
	width:0;
	height:0;
	border-top:4px solid rgba(40,58,76,1);
	border-bottom:0 solid rgba(40,58,76,1);
	border-left:4px solid transparent;
	border-right:4px solid transparent;
	transition:border-bottom, border-top;
}

.grid-container > div.menu > ul > label:hover:after {
	border-top:4px solid rgba(255,255,255,1);
	border-bottom:0 solid rgba(255,255,255,1);
}

.grid-container > div.menu > ul > li:hover,
.grid-container > div.menu > ul > label:hover,
.grid-container > div.menu > ul > li:focus-within,
.grid-container > div.menu > ul > ul > li:hover {
	background-color: rgba(40,58,76,1);
	cursor: pointer;
	color: #ffffff;
}

.grid-container > div.menu > ul > li:focus-within > a {
	outline: none;
}

.grid-container > div.menu a {
	color: #ffffff;
	text-decoration: none;
	text-align: left;
	display: block;
}

.grid-container > div.menu > ul > label {
	background-color: rgba(96,133,152,0.35);
	color: rgba(40,58,76,1);
}

.grid-container > div.menu > ul > ul {
	list-style: none;
	padding: 0px;
	margin: 0px;
	width: 100%;
	display: none;
	background-color: transparent;
	left: 0;
}

.grid-container > div.menu > ul > ul > li {
	padding: 0px;
	border: none;
	border-radius: 5px;
	display: block;
	width: 100%;
	margin-bottom: 7px;
	background-color: rgba(221,87,2,1);
	float: left;
	position: relative;
	cursor: pointer;
}

.grid-container > div.menu > ul > ul > li > a {
	padding: 8px 8px 8px 20px;
}

.fa-caret-down {
	float: right;
	padding-right: 8px;
	color:  #ffffff;
}

.fa-bars {
	color: rgba(255,255,255,1);
	padding: 8px 8px 8px 20px;
	border: none;
	border-radius: 5px;
	width: 100%;
	margin-bottom: 7px;
	background-color: rgba(96,133,152,1);
	float: left;
	position: relative;
	cursor: pointer;
}

.fa-bars:hover {
	background-color: rgba(40,58,76,1);
}

/* =============================================
   Footer
   ============================================= */
.grid-container > div.footer {
	grid-area: footer;
	background-color:  rgba(40,58,76,1);
	color: rgba(255,255,255,1);
	text-align: center;
	font: normal small-caps 2rem "Lucida Sans", sans-serif;
	padding: 0;
	height: 80px;
	position: sticky;
	top: 100vh;
	display: flex;
}

.grid-container > div.footer > div.left {
	height: 100%;
	flex-grow: 3;
}

.grid-container > div.footer > div.left > p {
	margin: 0;
	position: absolute;
	top: 50%;
	left: 80px;
	transform: translate(-10%, -50%);
}
 
.grid-container > div.footer > div.middle {
	margin: 0;
	height: 100%;
	width: 36px;
	background-repeat: no-repeat;
	flex-basis: 36px;
}

.grid-container > div.footer > div.right {
	margin: 0;
	height: 100%;
	flex-grow: 1;
}

.grid-container > div.footer a {
	color: rgba(255,255,255,1);
	text-decoration: none;
}

.grid-container > div.footer > .fa-trash {
	color: rgba(40,58,76,1)
}

.grid-container > div.footer > .fa-edit {
	color: rgba(40,58,76,1);
}

.grid-container > div.footer > button.fa {
	border: 0px;
	background-color: rgba(255,255,255,1);
}

@media (max-width: 1024px) {
	.grid-container {
		grid-template-areas:
			'header'
			'menu'
			'content'
			'footer';
		grid-template-columns: auto;
		grid-template-rows: 100px auto auto 100px;
		align-content: flex-start;
		gap: 5px;
		padding: 0px;
		margin: 0px;
		display: grid;
		height: 100%;
	}

	.grid-container > div.menu > label {
		display: block;
	}

	.grid-container > div.menu > ul.nav {
		display: none;
	}
}

/* Container structuur */
@media (min-width: 1025px) {
	.grid-container {
		display: grid;
		grid-template-areas: 
		'header header' 
		'menu content' 
		'footer footer';
		grid-template-columns: 250px 5fr;
		grid-template-rows: 100px 1fr auto;
		align-content: flex-start;
		gap: 5px;
		padding: 0px;
		margin: 0px;
		height: 100%;
	} 
}