span.infobutton {
	display: inline-block;
	width: 18px;
	height: 18px;
	border-radius: 18px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-o-border-radius: 20px;
	background-color: #88f;
	text-align: center;
	font-family: Courier, serif;
	font-size: 12pt;
	color: white;
}
span.infobutton::before {
	content: 'i';
}
span.infobutton:hover {
//	background: -webkit-linear-gradient(#88f,#ddf);
}
span.infobutton.active {
	background: linear-gradient(#88f,#ddf);
	background: -webkit-linear-gradient(#88f,#ddf);	
	background: -moz-linear-gradient(#88f,#ddf);	
	background: -o-linear-gradient(#88f,#ddf);	
	color: black;
}
div.infotext {
	display: none;
	background-color: #ff8;
	border: 1px solid black;
	padding: 5px;
	margin: 0;
}
div.infotext.flex {
	position: absolute;
	max-width: 250px;
	border-radius: 0 10px 10px 10px;
	-webkit-border-radius: 0 10px 10px 10px;
	-moz-border-radius: 0 10px 10px 10px;
	-o-border-radius: 0 10px 10px 10px;
	box-shadow: 4px 4px 6px 0px rgba(128,128,128,0.50);
	-webkit-box-shadow: 4px 4px 6px 0px rgba(128,128,128,0.50);
	-moz-box-shadow: 4px 4px 6px 0px rgba(128,128,128,0.50);
	-o-box-shadow: 4px 4px 6px 0px rgba(128,128,128,0.50);
}
div.infotext.flex.top {
	position: absolute;
	max-width: 250px;
	border-radius: 10px 10px 10px 0px;
	-webkit-border-radius: 10px 10px 10px 0px;
	-moz-border-radius: 10px 10px 10px 0px;
	-o-border-radius: 10px 10px 10px 0px;
	box-shadow: 4px 4px 6px 0px rgba(128,128,128,0.50);
	-webkit-box-shadow: 4px 4px 6px 0px rgba(128,128,128,0.50);
	-moz-box-shadow: 4px 4px 6px 0px rgba(128,128,128,0.50);
	-o-box-shadow: 4px 4px 6px 0px rgba(128,128,128,0.50);
}
div.infotext p {
	margin: 0;
	padding: 0;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 9pt;
}
div.infotext.error {
	background-color: #f44;
}
div.infotext.error p {
	color: white;
}
