html, body
	{
		font-family: helvetica, verdana, serif;
		padding: 0;
		margin: 0;
		font-weight: normal;
		background: #F5F5F5;

		cursor: default;
		font-size: 14pt;
	}
div.main
	{
		min-width: 300px;
		width: auto !important;
		width: 300px;
		margin-bottom: 54px;
	}
div.topper
	{
		background-color: #FF5F00;
		padding: 6px 12px;
		text-align: right;
	}
div.topper span
	{
		 color: #CCC;
		 margin-right: 6px;
		 padding-right: 6px;
		 border-right: 1px solid #FFF;
	}
div.topper a
	{
		color: #CCC;
	}
div.topper a:hover
	{
		text-decoration: underline;
	}
div.header
	{
		padding: 12px 20px;
		background-color: #FFF;
	}
div.logo
	{
		padding: 20px 0;
		float: left;
	}
div.welcome
	{
		margin-left: 220px;
	}
div.content
	{
		padding: 0 20px;
		max-width: 1280px;

		margin: 14px auto;
	}
div.bar
{
	margin-bottom: 22px;
}
div.info
	{
		border: 1px solid #CCC;
		padding: 8px;
		background-color: #FFF;
	}

h1
	{
		margin: 18px 0;
	}

a
	{
		color: #0000A0;
		text-decoration: none;
	}
a:hover
	{
		color: #0000F0;
	}


div.logout
	{
		position: fixed;
		right: 4px;
		top: 4px;
		padding: 5px 0px;
		z-index: 90;
	}
div.logout a
	{
		color: #555;
		background-color: #FAFAFA;
		padding: 4px 8px;
		cursor: pointer;

		border: 1px solid #CCC;
	}
div.logout a:hover
	{
		background-color: #FEFEFE;
		border: 1px solid #BCBCBC;
	}

input[type=file]
	{
		font-size: 1pt;
	}

/**/
a.button, span.button, label.button
	{
		color: #555;
		background-color: #EEE;
		padding: 4px 8px;
		cursor: pointer;

		border: 1px solid #CCC;
		border-radius: 3px;
		box-sizing: border-box;
		user-select: none;
	}
a.button:hover, span.button:hover, label.button:hover
	{
		color: #000;
		border: 1px solid #000;
	}
input.button
	{
		font-size: 14pt;
		color: #555;
		background-color: #FAFAFA;
		border: 1px solid #CCC;
		padding: 4px 8px;
		cursor: pointer;
		border-radius: 3px;
		margin: 0 2px;
	}
input.button:hover, input.button:focus
	{
		color: #000;
		border: 1px solid #BCBCBC;
		background-color: #FEFEFE;
	}
input.textfield, select, textarea.textfield
	{
		background-color: #FFF;
		border: 1px solid #CCC;

		color: #555;
		font-size: inherit;
		padding: 6px 6px;
		box-sizing: border-box;
		max-width: 100%;

		border-radius: 3px;
		outline: none;
	}
input.textfield:focus, select:focus, textarea.textfield:focus
	{
		color: #000;
		background-color: #FFF;
		border: 1px solid #bcbcbc;
	}

input.button.red
{
	border: 2px solid darkred;
	background: #BF0000;
	color: white;
}
input.button.red:hover
{
	border: 2px solid darkred;
	background: #F55;
	color: white;
}
input.button.green
{
	border: 2px solid darkgreen;
	background: #00BF00;
	color: #AFA;
}
input.button.green:hover
{
	border: 2px solid darkgreen;
	background: #0F0;
	color: #000;
}
/**/

table
	{
		border-collapse: collapse;
	}
table.table th
	{
		background: #CCC;
		padding: 8px 4px;
		border: 1px solid #FFF;
	}
table.table td
	{
		background: #EEE;
		padding: 2px 6px;
		border: 1px solid #FFF;
	}

/* */
div#fullscreenbg
	{
		position: fixed;
		background: #000;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		height: 100%;
		z-index: 97;
		transition: all 0.3s;
	}
div.fullscreenbg
	{
		visibility: hidden;
		opacity: 0;
	}
div.fullscreenbgg
	{
		visibility: visible;
		opacity: .4;
	}

div#messagebox
	{
		position: fixed;
		min-width: 400px;
		width: auto !important;
		width: 400px;
		max-width: 30%;

		top: 50%;
		left: 50%;

		z-index: 98;
		transition: all 0.3s;
	}
div.messagebox
	{
		visibility: hidden;
		opacity: 0;
		transform: translate(-50%, -60%);
	}
div.messagebox > div
	{
		box-shadow: 0 0 12px 4px #989898;
		border: 2px solid #989898;
		background: #F9F9F9;
		border-radius: 10px;
		overflow: hidden;
	}
div.messagebox > .success
	{
		box-shadow: 0 0 12px 4px #98D38C;
		border: 2px solid #98D38C;
		background: #CFC;
	}
div.messagebox > .error
	{
		box-shadow: 0 0 12px 4px #FB8686;
		border: 2px solid #FB8686;
		background: #FAA;
	}
div.messageboxx
	{
		visibility: visible;
		opacity: 1;
		transform: translate(-50%, -50%);
	}
div#messagebox div.h
	{
		font-size: 1.2em;
		text-align: left;
		padding: 6px 8px;
		background: #A9A9A9;
		color: #FFF;
	}
div#messagebox .success div.h
	{
		background: #98D38C;
		color: #000;
	}
div#messagebox .error div.h
	{
		background: #FB8686;
		color: #FFF;
	}



div#messagebox div.b
	{
		display: table;
		padding: 24px;
		box-sizing: border-box;
		width: 100%;
	}
div#messagebox div.t
	{
		display: table-cell;
		vertical-align: middle;
	}
div#messagebox div.bt
	{
		text-align: center;
		margin-bottom: 16px;
		position: relative;
	}
div#messagebox div.bt span
	{
		position: absolute;
		bottom: 0;
		right: 24px;
		color: grey;
	}


div.messagebox > .icon div.b:before
	{
		font-size: 3em;
		border-radius: 50%;
		margin-right: 20px;
		font-family: courier new;
		display: inline-flex;
		-moz-display: inline-flex;
		-webkit-display: inline-flex;
		box-sizing: border-box;
		width: 1.3em;
		height: 1.3em;
		align-items: center;
		justify-content: center;
		font-weight: bold;
	}

div.messagebox > .info.icon div.b:before
	{
		content: "i";
		color: #999;
		border: 6px solid #999;
	}

div.messagebox > .success.icon div.b:before
	{
		content: "\2714";
		color: green;
		border: 6px solid green;
	}
div.messagebox > .error.icon div.b:before
	{
		content: "!";
		color: red;
		border: 6px solid red;
	}


/* loading animation */
div#messagebox > div.loading {
	background: -moz-linear-gradient(left, #f9f9f9 48%, #f00 50%, #f9f9f9 52%);
	background: -webkit-linear-gradient(left, #f9f9f9 48%,#f00 50%,#f9f9f9 52%);
	background: linear-gradient(to right, #f9f9f9 48%, #f00 50%,#f9f9f9 52%);
	background-size: 400%;

	animation: loading-animation 3s ease infinite;
}
@keyframes loading-animation {
	0%{background-position: 100% 50%;}
	100%{background-position: 0% 50%;}
}
/* loading animation */
/* */


div.successBox, div.warningBox, div.errorBox
{
	padding: 14px;
	max-width: 60%;
	margin: 0 auto;
	text-align: center;
	border-radius: 3px;
}
div.successBox
{
	border: 1px solid #B7FFB8;
	background: #EFE;
}
div.warningBox
{
	border: 1px solid #F2F200;
	background: #FFFF55;
}
div.errorBox
{
	border: 1px solid #BF0000;
	background: #FEE;
}


div.progress
	{
		border: 1px solid grey;
		border-radius: 3px;
		position: relative;
	}
div.progress div
	{
		height: 1.2em;
		background: limegreen;
	}
div.progress font
	{
		position: absolute;
		top: 0;
		left: 0;
		bottom: 0;
		text-align: left;
		padding-left: 4px;
		color: grey;
	}
div.progress font + span
	{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		text-align: center;
	}
div.progress font + span + span
	{
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		text-align: right;
		padding-right: 4px;
		color: grey;
	}



:root {
  --colour1: limegreen;
  --colour2: lime;
  --speed: 0.8s;
}


.progresso
	{
		box-sizing: border-box;
		width: 100%;
		border-radius: 3px;
		border: 4px solid transparent;
		position: relative;
		padding: 4px;
	}
.progresso:before
	{
		content:'';
		border: 1px solid limegreen;
		border-radius: 3px;
		position: absolute;
		top: -4px;
		right: -4px;
		bottom: -4px;
		left: -4px;
	}
.progresso .bar
	{
		position: absolute;
		border-radius: 3px;
		top: 0;
		right: 100%;
		bottom: 0;
		left: 0;
		background: limegreen;
		width: 0;
		animation: lorem 3s linear infinite;
	}

@keyframes lorem {
  0% {
    left: 0%;
    width: 0%;
		opacity: 0;
  }
  2% {
    width: 15%;
  }
  20% {
    opacity: 1;
  }
  99% {
    width: 0%;
  }
  80% {
    opacity: 1;
  }
  100% {
    left: 100%;
		opacity: 0;
  }
}



  /* Tooltip */
.tooltip {
	position: relative;
	display: inline-block;
	border-bottom: 1px dotted black;
}
/* Tooltip text */
.tooltip .tooltiptext {
	visibility: hidden;
	width: 200px;
	background-color: #FFF;
	color: #000;
	text-align: center;
	padding: 5px 0;
	border-radius: 6px;
	border: 1px solid #555;
	font-style: italic;

	position: absolute;
	z-index: 1;
	bottom: 125%;
	left: 50%;
	margin-left: -100px;

	opacity: 0;
	transition: opacity 0.3s;
}

.tooltip .tooltiptext::after {
	content: "";
	position: absolute;
	 top: 100%;
	left: 50%;
	margin-left: -5px;
	border-width: 5px;
	border-style: solid;
	border-color: #555 transparent transparent transparent;
}
.tooltip:hover .tooltiptext {
	visibility: visible;
	opacity: 1;
}
/* Tooltip */

/* loading animation */
#loading {
	position: fixed;
	width: 60px;
	height: 60px;
	top: 50%;
	left: 50%;
	margin: -30px 0 0 -30px;
	border-radius: 100%;
	z-index: 99;
	border: 1px solid #FFF;
	visibility: hidden;
	opacity: 0;
}
#loading div {
  position: absolute;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border-radius: 50%;

  animation: rotate-loader 6s linear infinite;
  border-left: 4px solid #55F;
  border-right: 4px solid #55F;
}

@keyframes rotate-loader {
  0% {
	transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg);
  }
  100% {
	transform: rotateX(0deg) rotateY(0deg) rotateZ(360deg);
  }
}

div.loading4bg {
	background: -moz-linear-gradient(left, #F9F9F9 48%, #FFF 50%, #F9F9F9 52%);
	background: -webkit-linear-gradient(left, #F9F9F9 48%,#FFF 50%,#F9F9F9 52%);
	background: linear-gradient(to right, #F9F9F9 48%,#FFF 50%,#F9F9F9 52%);
	background-size: 400%;

	animation: loading-animation 3s ease infinite;
}
@keyframes loading-animation {
	0%{background-position: 100% 50%}
	100%{background-position: 0% 50%}
}
/* loading animation */


.yellowFont
	{
		color: #BFBF00 !important;
	}

.redFont
	{
		color: #BF0000 !important;
	}
.redBorder
	{
		border: 1px solid #BF0000 !important;
	}
.redBg
	{
		background: #FEE !important;
	}
.topmargin20px
	{
		margin-top: 20px;
	}


@media screen and (max-height: 600px), screen and (max-width: 750px) {
	html, body
		{
			/*! font-size: 12pt; */
		}
	h1
		{
			font-size: 1.7em;
		}
	div.welcome
		{
			margin-left: 135px;
		}
	div.logo img
		{
			max-width: 90%;
		}
	input.textfield
		{

		}
	div.successBox, div.warningBox, div.errorBox
		{
			max-width: 80%;
		}
}

@media screen and (max-width: 500px) {

	h1, div.welcome p
		{
			text-align: center;
		}
	div.welcome
		{
			margin: 0;
		}
	div.logo
		{
			padding: 12px 0 0 0;
			margin: 0;
			float: none;
			text-align: center;
		}
	div.logo img
		{
			max-width: 100%;
		}
	input.textfield, input.button
		{
			/*! font-size: 11pt; */
		}
	label.button
		{
			/*! font-size: 10pt; */
		}
	div.successBox, div.warningBox, div.errorBox
		{
			max-width: 100%;
		}
	div.topper
	{
		text-align: center;
	}
}