.submenu {
	position: relative;
	display: inline-block;
}

.submenu-content {
	display: none;
	position: absolute;
	background-color: #225b6c;
	min-width: 160px;
	z-index: 1;
}

.submenu-content a {
	color: #DDDDDD;
	padding: 12px 16px;
	text-decoration: none;
	display: block;
}

.submenu-content a:hover {
	color: #fbc03c;
}

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

.excel {
	border-collapse: collapse;
	background-color: #FFFFFF;
}

.excel td,
.excel th {
	border: 1px solid #BBBBBB;
	padding: 5px;
}

.excel th {
	background-color: #DDDDDD;
	padding-top: 10px;
	padding-bottom: 10px;
}

.tablight td,
.tablight th {
	border: 1px solid #BBBBBB;
}

.tablight .tabnoborder td,
.tablight .tabnoborder th {
	border: none;
}

.tablightcell {
	padding: 3px
}

.tablemod {
	width: 100%;
	background-color: #FFFFFF;
	border-radius: 8px;
}

.tablemod td {
	padding: 6px;
}

.tablemod th {
	font-size: 12px;
	color: #777777;
	background-color: #DDDDDD;
	font-weight: bold;
	text-transform: uppercase;
}

.tablemod tr {
	border-width: 1px;
	border-bottom-color: #AAAAAA;
}

.tablemod .mincol {
	width: 1%;
	white-space: nowrap;
	padding-left: 15px;
	padding-right: 15px;
}

@media (max-width: 576px) {
	.tablemod {
		font-size: 12px !important;
	}

	.tablemod .mincol {
		padding: 3px !important;
	}
}

.imgselectable {
	border-radius: 16px;
	border: solid 1px #f3b348;
}

.imgselectable:hover {
	background-color: #f3b348;
}

.imgselected {
	background-color: #f3b348;
	box-shadow: 0px 10px 18px 1px #333;
}

.imgselectable2 {
	border-radius: 16px;
	border: solid 1px #f3b348;
}

.imgselectable2:hover {
	background-color: #f3b348;
}

.imgselected2 {
	background-color: #f3b348;
	box-shadow: 0px 10px 18px 1px #333;
}

.txtlink a {
	font-weight: bold;
}

.txtlink a:hover {
	text-decoration: underline;
}

.opencell {
	padding: 5px 10px;
}

.book {
	margin: 0;
	padding: 0;
	background-color: #e5e7eb;
	font-family: Helvetica;
	font-size: medium;
}

.page {
	display: block;
	width: 21cm;
	height: 29.7cm;
	margin: 1cm auto;
	border: 1px #D3D3D3 solid;
	border-radius: 6px;
	background: white;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.subpage {
	margin: 1cm;
	padding: 0.5cm;
	width: 19cm;
	height: 27.7cm;
	outline: 0cm #FAFAFA solid;
}

@page {
	size: A4;
	margin: 0;
}

@media print {
	.page {
		margin: 0;
		border: initial;
		border-radius: initial;
		width: initial;
		min-height: initial;
		box-shadow: initial;
		background: initial;
		page-break-after: always;
	}
}

.w-half {
	width: 50%;
}

.w-third {
	width: 33.333333%;
}

.scrollanim {
	opacity: 0;
	transition: opacity 2.5s ease, transform 2.5s ease;
	transform: scale(1.2);
	will-change: transform, opacity;
}

.scrollanim-visible {
	opacity: 1;
	transform: scale(1.0);
	transition: opacity 2.5s ease, transform 2.5s ease;
}

/*
.tooltip {
	position: relative;
	display: inline-block;
  }

  .tooltip .tooltiptext {
	visibility: hidden;
	background-color: #777;
	color: #fff;
	text-align: center;
	border-radius: 6px;
	padding: 5px 10px;
	margin-top: -25px;
	position: absolute;
	z-index: 1;
	margin-top: -10;
	transition: opacity .6s;
	left: 50%;
	top: 100%;
	transform: translate(-50%, 8px);
  }

  .tooltip:hover .tooltiptext {
	visibility: visible;
  }
*/

.passvalid {
	color: rgb(46, 144, 46);
}

.passvalid:before {
	content: "✔";
	color: rgb(46, 144, 46);
	margin: 0px 10px;
}

.passinvalid {
	color: rgb(198, 55, 55);
}

.passinvalid:before {
	content: "✖";
	color: rgb(198, 55, 55);
	margin: 0px 10px;
}

.button-spinner {
	border: 5px solid #EEEEEE;
	border-radius: 50%;
	border-top: 5px solid #225b6c;
	width: 25px;
	height: 25px;
	animation: buttonspin 2s linear infinite;
	position: absolute;
	top: 10%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: none;
}

@keyframes buttonspin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

.bg-good {
	background-color: #48a133;
}

.bg-bad {
	background-color: #f65249;
}

.flashalert {
	position: fixed;
	bottom: 0;
	right: 0;
	min-width: 300px;
	max-width: 400px;
	padding: 30px;
	margin: 30px;
	border-radius: 8px;
	text-align: center;
	color: #FFFFFF;
	animation: fadeinout 5s linear forwards;
}

@keyframes fadeinout {
	0% {
		opacity: 0;
	}

	25% {
		opacity: 1;
	}

	50% {
		opacity: 1;
	}

	75% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

.createicon-container {
	background-color: #75828f;
	border-radius: 25%;
}

@keyframes pulse {
	0% {
		background-color: transparent;
	}

	50% {
		background-color: #225b6c;
	}

	100% {
		background-color: transparent;
	}
}

.pulse-row {
	animation: pulse 3s ease-in-out;
}