* {
	font-family: verdana, calibri, tahoma, sans-serif !important;
}
/*
	Viewport
*/
@-webkit-viewport {
	width: device-width
}

@-moz-viewport {
	width: device-width
}

@-ms-viewport {
	width: device-width
}

@-o-viewport {
	width: device-width
}

@viewport {
	width: device-width
}

/*
	Interface generale
*/
.content {
	overflow-scrolling: touch !important;
	-webkit-overflow-scrolling: touch !important;
	background-color: #ddd;
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: cover;
}

.circleLoadingIndicator .circleChild:before {
	background-color: white;
}

.panelQuestion {
	background-color: rgba(255, 255, 255, 0.9);
	border: #aaa solid 4px;
	border-radius: 10px;
	margin: 10px;
}

.panelContent {
	/*margin: 16px;
	width: 100%;
	height: 100%;*/
	position: absolute;
	top: 16px;
	left: 16px;
	bottom: 16px;
	right: 16px;
}

/*
	Composants GWT
*/
.gwt-TextBox, .gwt-PasswordTextBox {
	border: 1px solid #aaa !important;
	background-color: transparent !important;
}

/*
	Style surchargés
*/

.inputPanel {
	background: none;
}

.inputLabel {
	color: black;
	display: inline-block;
	width: 100px;
	text-align: right;
	padding-right: 6px;
}

.title {
	color: #000; /* black */
}

/*
	Animations globales
*/

@keyframes fadeIn {
	from { opacity:0; }	to { opacity: 1; }
}

@-moz-keyframes fadeIn {
	from { opacity:0; }	to { opacity: 1; }
}

@-webkit-keyframes fadeIn {
	from { opacity:0; }	to { opacity: 1; }
}

@-ms-keyframes fadeIn {
	from { opacity:0; }	to { opacity: 1; }
}

@-o-keyframes fadeIn {
	from { opacity:0; }	to { opacity: 1; }
}

/*

	Login
	
*/
.loginPanel {
	border: 1px solid #ccc;
}

.fondLoginPanel {
	background: #fff;
	opacity: 0.8;
}
/*
	Toolbar
	
*/
.toolbar {
	background-image: none !important;
	background-color: white !important;
	background: -webkit-linear-gradient(#fff, #e9eef3); 
	background: -moz-linear-gradient(#fff, #e9eef3);
	background: -ms-linear-gradient(#fff, #e9eef3);
	background: linear-gradient(#fff, #e9eef3);
}

#toolbar-contact {
	vertical-align: bottom;
}	

.toolbar-contact {
	opacity: 0;
	display: flex;
	align-items: center;
	padding-left: 24px;
}

.toolbar-contact-visible {
	opacity: 1;
	animation: fadeIn 1s;
	-webkit-animation: fadeIn 1s;
	-moz-animation: fadeIn 1s;
	-o-animation: fadeIn 1s;
	-ms-animation: fadeIn 1s;
}

.toolbar-contact-content {
	font-size: 1.1em;
	color: #438DF1;
	cursor: pointer;
	text-align: center;
}

#toolbar-logo {
	text-align: center; 
	vertical-align: center;
}

.toolbar-menu {
	overflow: hidden;
}

.toolbar-menuItem-wrapper  {
	transform: translateY(-50px);
	-webkit-transform: translateY(-50px);
	-moz-transform: translateY(-50px);
	-ms-transform: translateY(-50px);
	-o-transform: translateY(-50px);
	animation: slideOutMenu 1s;
	-webkit-animation: slideOutMenu 1s;
	-moz-animation: slideOutMenu 1s;
	-o-animation: slideOutMenu 1s;
	-ms-animation: slideOutMenu 1s;
	
}

.toolbar-menuItem-wrapper-visible {
	transform: none;
	-webkit-transform: none;
	-moz-transform: none;
	-ms-transform: none;
	-o-transform: none;
	animation: slideInMenu 1s;
	-webkit-animation: slideInMenu 1s;
	-moz-animation: slideInMenu 1s;
	-o-animation: slideInMenu 1s;
	-ms-animation: slideInMenu 1s;
}

@keyframes slideInMenu {
	from { transform: translateY(-50px); } to { transform: none; }
}

@-moz-keyframes slideInMenu {
	from { transform: translateY(-50px); } to { transform: none; }
}

@-webkit-keyframes slideInMenu {
	from { transform: translateY(-50px); } to { transform: none; }
}

@-ms-keyframes slideInMenu {
	from { transform: translateY(-50px); } to { transform: none; }
}

@-o-keyframes slideInMenu {
	from { transform: translateY(-50px); } to { transform: none; }
}

.toolbar-menuItem {
	cursor: pointer;
	text-transform: uppercase;
	color: #888;
	margin-right: 48px;
}

.toolbar-menuItem-selected {
	color: black;
	font-weight: bold;
}

.toolbar-menuItem:after {
	margin-top: 5px;
	display: block;
	content: "";
	background: #888;
	width: 30px;
	height: 4px;
	transition: width 0.5s ease;
	-webkit-transition: width 0.5s ease;
	-moz-transition: width 0.5s ease;
	-ms-transition: width 0.5s ease;
	-o-transition: width 0.5s ease;
}

.toolbar-menuItem-selected:after {
	margin-top: 5px;
	display: block;
	content: "";
	background: black;
	width: 30px;
	height: 4px;
}

.toolbar-menuItem:hover {
	color: #2592E1;
}

.toolbar-menuItem:hover:after {
	width: 100%;
	background: #2592E1 !important;
}

#toolbar-site {
	vertical-align: bottom;
}	

.toolbar-site {
	padding: 12px;
	margin-right: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	/*flex-direction: column;*/
	width: 280px;
	height: 80px;
/*	
	background: -webkit-linear-gradient(#2592E1, #0A5189);
	background: -moz-linear-gradient(#2592E1, #0A5189);
	background: -ms-linear-gradient(#2592E1, #0A5189);
	background: linear-gradient(#2592E1, #0A5189);
*/
	border-radius: 8px;
	box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.5), 0px 2px 2px 0px rgba(255, 255, 255, 0.5) inset;
	-moz-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.5), 0px 2px 2px 0px rgba(255, 255, 255, 0.5) inset;
	-webkit-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.5), 0px 2px 2px 0px rgba(255, 255, 255, 0.5) inset;
	-ms-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.5), 0px 2px 2px 0px rgba(255, 255, 255, 0.5) inset;
	-o-box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.5), 0px 2px 2px 0px rgba(255, 255, 255, 0.5) inset;
	transition: transform 0.5s;
	-webkit-transition: transform 0.5s;
	-moz-transition: transform 0.5s;
	-ms-transition: transform 0.5s;
	-o-transition: transform 0.5s;
}

.toolbar-site-transform {
	transform: translateY(-150px);
	-webkit-transform: translateY(-150px);
	-moz-transform: translateY(-150px);
	-ms-transform: translateY(-150px);
	-o-transform: translateY(-150px);
}

.toolbar-site-designation {
	color: black;
	font-weight: bold;
	text-align: center;
}

.toolbar-site-adresse {
	margin: 8px;
	display: inline-block;
}

.toolbar-site-controle {
	text-align: center;
}

.toolbar-site-moyenne {
	text-align: center;
}

/*
	Sites
*/
.pnSites {
	text-align: center;
}

.pnSite {
	cursor: pointer;
    display: inline-block;
    margin: 16px;
	padding:  12px;
	box-sizing: border-box;
    animation: fadeIn 0.8s;
    -webkit-animation: fadeIn 0.8s;
    -moz-animation: fadeIn 0.8s;
    -o-animation: fadeIn 0.8s;
    -ms-animation: fadeIn 0.8s;
}

.pnSite:hover>div {
	opacity: 1;
}

.pnSiteBackground {
	width: 100%;
	opacity: 0.8;
	/*background-color: #7AD16C; */  /*#008290;*/
    border-top-left-radius: 15px;
    border-bottom-right-radius: 15px;
}

.pnSiteContainer {
	padding: 12px;
	display: flex;
	align-items: center;
	flex-direction: column;
	color: #333;
	box-sizing: border-box;
}

.pnSiteDesignation {
	margin-top: 8px;
	color: black;
}

.pnSiteAdresse {
	margin-top: 8px;
	display: inline-block;
}

.pnSiteControles {
	margin-top: 8px;
	display: flex;
	align-items: center;
	flex-direction: column;
}

.pnSiteMoyenne {
	font-weight: bold;
}

.pnEditionsContainer {
	position: relative !important;
	margin: auto;	
	height: 150px;	
}

.pnEditions {
	background-color: rgba(240, 240, 240, 0.8);
	border: 2px solid red;
    border-radius: 70px;
    height: 140px;    
    min-width: 50px;
    margin-top: 3px;
}

.pnEdition {
	width: 180px;
	height: 260px;
	cursor: pointer;
	display: inline-block;
	margin:  10px;
    animation: fadeIn 0.8s;
    -webkit-animation: fadeIn 0.8s;
    -moz-animation: fadeIn 0.8s;
    -o-animation: fadeIn 0.8s;
    -ms-animation: fadeIn 0.8s;
}

.pnEdition:hover>div {
	opacity: 1;
}

.pnEditionContainer {
	width: 160px;
	height: 180px;
	align-items: center;
	box-sizing: border-box;
	padding: 10px;
}

/*
.pnEditionBackground {
	opacity: 0.8;
	background-color: #008290;
    border-top-left-radius: 15px;
    border-bottom-right-radius: 15px;
} */

.pnEditionDesignation {
	color: #333;
	font-size: 0.9em;/*1.1em;*/
	text-align: center;
	margin-top: 4px;
}


/*
	Site (graphique)
*/

.periodChartContent {
	margin: 0 auto;
	background-color: rgba(255, 255, 255, 0.8);
	border: #aaa solid 4px;
	border-radius: 10px;
}

.panelTitlePeriodChart {
	background: -webkit-linear-gradient(#2592E1, #0A5189);
	background: -moz-linear-gradient(#2592E1, #0A5189);
	background: -ms-linear-gradient(#2592E1, #0A5189);
	background: linear-gradient(#2592E1, #0A5189);
	border-radius: 6px 6px 0px 0px;
	vertical-align: center; 
}

.titlePeriodChart {
	color: white;
	font-weight: bold;
	font-size: 2em;
}

.imageCalendar {
	cursor: pointer;
	height: 40px;
	width: 40px;
}


/*
	Contrôles
*/
.pnControle {
	cursor: pointer;
    display: inline-block;
	margin:  16px;
    animation: fadeIn 0.8s;
    -webkit-animation: fadeIn 0.8s;
    -moz-animation: fadeIn 0.8s;
    -o-animation: fadeIn 0.8s;
    -ms-animation: fadeIn 0.8s;
}

.pnControle:hover>div {
	opacity: 1;
}

.pnControleBackground {
	width: 100%;
	opacity: 0.8;
    border-top-left-radius: 15px;
    border-bottom-right-radius: 15px;
}

.pnControleContainer {
	padding: 20px;
	margin-right: 16px;	
	display: flex;
	align-items: center;
	flex-direction: column;
	color: #333;
	box-sizing: border-box;
}

.pnControleContent {
	margin-top: 16px;
	width: 100%;
	text-align: center;
	display: inline-block;
}

.pnSortContainer {
	display: flex;
	justify-content: flex-end;
}

.pnTitle {
	background-color: rgba(255, 255, 255, 0.8);
	border: #aaa solid 4px;
	border-radius: 10px;
	padding: 16px;
	/*margin: 16px;*/
	text-align: center;
	font-weight: bold;
}

.pnLocalTitle {
	background-color: rgba(255, 255, 255, 0.8);	
	padding: 16px;	
	text-align: center;
	font-weight: bold;
}

.pnSortContent, .pnSortContent-controle {
	display: flex;
	color: white;
	background-color: rgba(0, 0, 0, 0.4);
	border-radius: 8px;
	padding: 8px;
	margin-right: 32px;
}

.pnSortContent-controle {
	margin-left: 16px;
	margin-right: 0px;
}

.pnSortPane {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.pnSortPane-title {
	text-align: center;
}

.pnSortPaneContent {
	display: flex;
}

.pnSortPaneContent-controle {
	display: flex;
	flex-direction: column;
	align-items: left;
}

.pnSortPane-composite {
	display: flex;
	width: 64px;
	flex-direction: column;
	align-items: center;
}

.pnSortPane-composite-controle {
	display: flex;
}

.pnDocument-container {
	text-align: center;
}


/*
	Contrôle
*/

.controle-content {
	background-color: rgba(255, 255, 255, 0.8);
	border: #aaa solid 4px;
	border-radius: 10px;
}

.tree-content {
	width: 300px;
	height: 100%;
}

.prestations-content {
	width: 100%;
	height: 100%;
}

.prestations-table {
	padding: 4px;
	border-bottom: #aaa solid 1px;
}

.prestations-header {
	font-weight: bold;
}

.prestations-ligne {
	cursor: pointer;
}

.prestations-col-designation {
	width: 80%;
}

.prestations-col-libelle {
	width: 20%;
	text-align: right;
} 

.panelTitleTreeview {
	background: -webkit-linear-gradient(#2592E1, #0A5189);
	background: -moz-linear-gradient(#2592E1, #0A5189);
	background: -ms-linear-gradient(#2592E1, #0A5189);
	background: linear-gradient(#2592E1, #0A5189);
	border-radius: 6px 6px 0px 0px;
}

.titleTreeview {
	color: white;
	font-size: 1.4em;
}

.treeviewMenu {
	cursor: pointer;
	padding: 4px;
}

.treeviewMenu:hover {
	background-color: rgba(200, 200, 200, 0.8);
}

.treeviewMenu-selected {
	background-color: rgba(122, 188, 249, 0.8);
}

.no-margin {
	margin: 0px;
}

.prestation {
	margin: 20px 20px 20px 20px;
	color: black;
}

.prestation-line {
	margin: 8px 0 8px 0
}

.prestation-line>div {
	display: inline-block;
	min-width: 300px;
}

.prestation-line-designation {
/*	margin-left: 32px; */	
}

.prestation-line-valeur {
/*	margin-right: 32px; */
}