:root {
	--heightmenu:65px;
	--bleu:#3080b6;
	--colonnedroitefermee:30px;
	--colonnedroitevisible:410px;
}
.alignright {text-align:right;}
body {
	margin:0px;
}
html {
	background-color:#f9f9fb;
	overflow-y:scroll;
	font-family:Verdana;
}
html.login {
	background-color:var(--bleu);
}
html.hover {
	background-color:lightgreen;
}
.header {
	border-bottom:1px solid var(--bleu);
	box-shadow: 0px 0px 10px var(--bleu);
	position:fixed;
	padding:10px 20px;
	width:calc(100% - 40px - var(--colonnedroitefermee));
	height:calc(var(--heightmenu) - 20px);
	z-index:15;
	display:flex;
	justify-content: space-between;
	align-items:center;
	background-color:white;
}
.site.colonnedroitevisible .header,.site.colonnedroitevisible .footer {
	width:calc(100% - 40px - var(--colonnedroitevisible));
}
.imagettesagenerer {
	margin-right:20px;
}
.header .left {
	display:flex;
}
.header .right {
	display:flex;
	justify-content:flex-end;
}
.header .right i.fas {
	font-size:20px;
	margin-left:20px;
}
.popup {
	position:fixed;
	z-index:1000;
	width:250px;
	padding:10px 20px;
	background-color:#67c825;
	color:white;
	font-weight:bold;
	border-radius:4px;
	left:calc(calc(100% - 250px) / 2);
	text-align:center;
	margin-top:10px;
	font-size:18px;
	
	display:none;
	
	-moz-transition: margin-top 0.4s ease;
	-webkit-transition: margin-top 0.4s ease;
	-o-transition: margin-top 0.4s ease;
	transition: margin-top 0.4s ease;
	overflow:auto;
}
.voletdroite {
	height:calc(100% - 60px);
	width:350px;
	min-width:350px;
	background-color:#f2f2f2;
	padding:30px;
	font-family:Verdana;
	position:relative;
	/*-moz-transition: all 0.4s ease;
	-webkit-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;*/
}
.site {
	display:flex;
	width:100%;
}
.site .gauche {
	width:calc(100% - var(--colonnedroitefermee));
	position:relative;
}
.site.colonnedroitevisible .gauche {
	width:calc(100% - var(--colonnedroitevisible));
}
.site .droite {
	overflow:hidden;
	width:var(--colonnedroitefermee);
	box-shadow:0px 0px 10px lightgrey;
	z-index:20;
	position:fixed;
	right:0;
	height:100%;
}
.site.colonnedroitevisible .droite {
	width:var(--colonnedroitevisible);
}
.voletdroite .ouvrirfermer{
	position:absolute;
	width:30px;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	margin-left:-30px;
	margin-top:-30px;
}
.voletdroite .ouvrirfermer i.fas {
	font-size:24px;
}
.blocimage {
	position:relative;
}
.voletdroite.visible {
	right:0px;
}
.voletdroite .typetags {
	display:block;
	margin-bottom:10px;
}
.voletdroite .container {
	font-size:14px;
	margin-bottom:10px;
}
.voletdroite .tags .typetags .type {
	margin-bottom:20px;
}
.voletdroite .tags {
	overflow:auto;
	height:calc(100% - 125px - 40px);
}
.voletdroite .bottom {
	border-top:1px solid grey;
	padding-top:20px;
	height:85px;
}
.content {
	padding-top:calc(var(--heightmenu));
	width:100%;
	/*-moz-transition: width 0.4s ease;
	-webkit-transition: width 0.4s ease;
	-o-transition: width 0.4s ease;
	transition: width 0.4s ease;*/
}
.content.reduit {
	width:calc(100% - 410px);
}
.tagprive .content {
	padding-top:0px;
}
.footer {
	position:fixed;
	bottom:0px;
	background-color:grey;
	color:white;
	padding:10px 20px;
	width:calc(100% - 40px - var(--colonnedroitefermee));
	z-index:5;
	text-align:center;
	font-family:Verdana;
}
.colonnegauchecontent {
	overflow:auto;
	max-height:calc(100% - 36px - 40px);
	height:calc(100% - 36px - 40px);
	padding:20px;
}
.colonnegauche input[type=submit],.colonnegauche input[type=button],.colonnegauche input[type=text]{
	width:100%;
}
.colonnegauche .typetags {
	display:block;
}
.colonnegauche .listetags {
	padding-left:20px;
}
.colonnegauche {
	position:fixed;
	z-index:2;
	max-height:calc(100% - var(--heightmenu));
	height:calc(100% - var(--heightmenu) - 40px);
	overflow:auto;
	width:200px;
	background-color:#f2f2f2;
	box-shadow:0px 0px 10px lightgrey;
	font-family:Verdana;
	
	-moz-transition: all 0.4s ease;
	-webkit-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
	min-width:200px;
	
	font-size:13px;
}
.colonnegauche .mois {
	padding-left:20px;
}
.colonnegauche label {
	margin-bottom:8px;
}
.colonnedroite {
	padding:20px 20px 40px 20px;
}

.tagprive .selectall {
	display:none;
}
table {
	border-collapse:collapse;
}
table tr td,table tr th {
	border:1px solid grey;
	padding:5px;
}
td.center {text-align:center;}
td.right {text-align:right;}
td.bold{font-weight:bold;}
tr.doublon td {background-color:red;}
tr.doublon2 td {background-color:orange;}
.compare {
	display:flex;
}
.compare tr.green td{background-color:#bde8bd;}
.compare tr.red td{background-color:red;}
.liste {
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
}
.liste div {
	margin:0px 10px 10px 0px;
	position:relative;
	background-color:lightgrey;
}
.liste div a.fa-edit {
	font-size:20px;
	position:absolute;
	color:white;
	text-decoration:none;
	right:10;
	top:10;
}
* {
	outline:0;
}
i {
	cursor:pointer;
}

tr.total td {
	font-weight:bold;
}

.container {
    display: block;
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
	padding:0px 0px 0px 23px;
	font-family:Verdana;
	margin-bottom:15px;
}
td.center .container {
	margin:auto;
	width:17px;
	height:17px;
	padding:0px;
}
.checkmark {
    position: absolute;
    left: 0px;
	top:0px;
    height:15px;
    width:15px;
    background-color: #f6f6f6;
    border: 1px solid #DADADA;
    border-radius: 3px;
}
.container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
.container .checkmark::after {
    left: 4px;
    top: 1px;
    width: 4px;
    height: 7px;
    border: solid white;
	border-top-width: medium;
	border-right-width: medium;
	border-bottom-width: medium;
	border-left-width: medium;
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.checkmark::after {
    content: "";
    position: absolute;
    display: none;
}
.container input:checked ~ .checkmark::after, .containerradio input:checked ~ .checkmark::after {
    display: block;
}
.container input:checked ~ .checkmark {
    background-color: var(--bleu);
    border: 1px solid var(--bleu);
}


input[type="text"],input[type="password"],select {
	padding:10px;
	font-size:14px;
	font-family:Verdana;
	border:1px solid var(--bleu);
	-moz-transition: border 0.2s ease;
	-webkit-transition: border 0.2s ease;
	-o-transition: border 0.2s ease;
	transition: border 0.2s ease;
	border-radius:6px;
}
input[type="text"],input[type="password"],.champselect {
	position:relative;
	margin-bottom:15px;
	display:block;
	width:250px;
}
.loginbox {
	position:absolute;
	top:calc(calc(100% - 344px) / 2);;
	left:calc(calc(100% - 360px) / 2);
	width:300px;
	background-color:white;
	border-radius:10px;
	padding:30px;
	text-align:center;
	box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}
.loginbox i.fas {
	font-size:90px;
	margin-bottom:50px;
	margin-top:20px;
	color:var(--bleu);
	cursor:default;
}
.loginbox form {
	margin-bottom:0px;
}
.loginbox .error {
	color:red;
	margin-top:20px;
	font-family:Verdana;
	text-align:center;
}
.loginbox input[type="password"],.loginbox input[type="submit"] {
	width:100%;
}
.loginbox .container {
	margin:auto;
	margin-bottom:15px;
}
.flexcol {
	display:flex;
	flex-wrap: wrap;
}
.flexcol > div {
	margin-right:50px;
}
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    overflow: hidden;
    text-transform: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    z-index: 2;
	background-color:transparent;
	width:100%;
}
input[type=text]:focus,select:focus {
	border:1px solid darkblue;
}
.hidden {
	display:none;
}
.champselect::after {
    right: 13px;
    top: 10px;
    width: 9px;
    height: 9px;
    border: solid var(--bleu);
    border-width: 0 2px 2px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    position: absolute;
}
.tags {
	margin-bottom:20px;
}
.tags .typetags .type{
	margin-right:20px;
	font-weight:bold;
	min-width:90px;
}
.typetags {
	display:flex;
	flex-direction:row;
	margin-bottom:5px;
}
.listetags {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	max-width:800px;
}
.tags .container {
	margin-right:15px;
}
p,h1,form {
	margin:0px 0px 20px 0px;
}

input[type=button],input[type=submit] {
	color: white;
	border: 0px;
	margin: 0px;
	cursor: pointer;
	-moz-transition: background-color 0.2s ease;
	-webkit-transition: background-color 0.2s ease;
	-o-transition: background-color 0.2s ease;
	transition: background-color 0.2s ease;
	padding:10px 20px;
	font-weight:bold;
	letter-spacing:1px;
	background-color:var(--bleu);
	border-radius:6px;
	font-size:15px;
}
input[type=button]:hover,input[type=submit]:hover,input[type=button]:focus,input[type=submit]:focus {
	background-color:darkblue;
}

.liste .bloc {
	width:100px;
	height:100px;
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
	display:block;
	float:left;
	margin:0px 10px 10px 0px;
	border:1px solid grey;
}
.liste .bloc.horizontal {width:150px;}
.liste .bloc.vertical {width:66px;}
.menu {
	display:flex;
	flex-direction:row;
}
.menu a {
	background-color:grey;
	color:white;
	padding:8px 20px 9px 20px;
	margin-right:10px;
	text-decoration:none;
	font-family:Verdana;
	font-size:18px;
	
	-moz-transition: all 0.2s ease; /* Firefox */
	-webkit-transition: all 0.2s ease; /* WebKit */
	-o-transition: all 0.2s ease; /* Opera */
	transition: all 0.2s ease; /* Standard */
}
.menu a:hover {
	background-color:#222222;
}
/*.compensate-for-scrollbar {
	margin-right:8px !important;
}*/

.gallery {
	display: flex;
	flex-flow: row wrap;
	margin-left: -10px;
	justify-content: left;
}

.blocimage {
	position:relative;
	overflow: hidden;
	margin: 0 0 10px 10px;
	flex: auto;
	height: 300px;
	min-width: 150px;
	max-width:600px;
	background-color:white;
	
	-moz-transition: box-shadow 0.4s ease; /* Firefox */
	-webkit-transition: box-shadow 0.4s ease; /* WebKit */
	-o-transition: box-shadow 0.4s ease; /* Opera */
	transition: box-shadow 0.4s ease; /* Standard */
}

.gallery .blocimage:nth-child(8n+1) {width: 390px;}
.gallery .blocimage:nth-child(8n+2) {width: 350px;}
.gallery .blocimage:nth-child(8n+3) {width: 340px;}
.gallery .blocimage:nth-child(8n+4) {width: 370px;}
.gallery .blocimage:nth-child(8n+5) {width: 360px;}
.gallery .blocimage:nth-child(8n+6) {width: 400px;}
.gallery .blocimage:nth-child(8n+7) {width: 380px;}
.gallery .blocimage:nth-child(8n+8) {width: 330px;}
.gallery .blocimage:nth-child(8n+9) {width: 350px;}

.blocimage.narrow {width: 180px !important;}
.blocimage.video {width: 150px;background-color:lightgrey;display:flex;align-items:center;justify-content:center;}
.blocimage img,.blocimage video {
	object-fit: cover;
	width: 100%;
	height: 100%;
	opacity: 0.85;
	-moz-transition: opacity 0.4s ease; /* Firefox */
	-webkit-transition: opacity 0.4s ease; /* WebKit */
	-o-transition: opacity 0.4s ease; /* Opera */
	transition: opacity 0.4s ease; /* Standard */
}

.navigationmois {
	display:flex;
	float:right;
}
.navigationmois .fleche {
	display:block;
	border:1px solid var(--bleu);
	width:37px;
	height:37px;
	text-align:center;
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--bleu);
	text-decoration:none;
	
	-moz-transition: all 0.4s ease; /* Firefox */
	-webkit-transition: all 0.4s ease; /* WebKit */
	-o-transition: all 0.4s ease; /* Opera */
	transition: all 0.4s ease; /* Standard */
}
.navigationmois .fleche.disabled {
	background-color:#e6e6e6;
	color:grey;
	cursor:default;
	border:1px solid grey;
}
.navigationmois .champselect {
	margin-bottom:0px;
}
.navigationmois .fleche.disabled i{
	cursor:default;
}
.navigationmois .fleche:hover {
	background-color:var(--bleu);
	color:white;
}
.navigationmois .fleche.disabled:hover {
	background-color:#e6e6e6;
	color:grey;
}
.navigationmois > * {
	margin-right:5px;
}
.blocimage:hover,.blocimage.selected {
	box-shadow: 0px 0px 10px black;
}
.blocimage:hover img,.blocimage.selected img {
	opacity: 1;
}
.blocimage.selected {
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    border: 3px solid var(--bleu);
    background: var(--bleu);
}
.blocimage.selected img {
	object-fit: cover;
	width: calc(100% + 6px);
	height: calc(100% + 6px);
	margin-left:-3px;
	margin-top:-3px;
}
.blocimage.selected .container {
	margin:7px 0px 0px 7px;
}
.blocimage.selected a.fas {
	right:7px;
	top:7px;
}
.blocimage a.fas {
	position:absolute;
	right:10px;
	top:10px;
	color:white;
	z-index:10;
	text-decoration:none;
	font-size:20px;
	opacity:0;
	-moz-transition: opacity 0.4s ease; /* Firefox */
	-webkit-transition: opacity 0.4s ease; /* WebKit */
	-o-transition: opacity 0.4s ease; /* Opera */
	transition: opacity 0.4s ease; /* Standard */
}
.tagprive .blocimage a.fas {
	display:none;
}
.loading {
	width:100px;
	height:100px;
	margin:auto;
	background-image:url('loading.gif');
	background-size:cover;
}
.blocimage:hover a.fas,.blocimage.selected a.fas{
	opacity: 1;
}
.blocimage .infos {
	background-color:rgba(255,255,255,0.7);
	position:absolute;
	width:100%;
	bottom:0px;
	text-align:center;
	font-family:Verdana;
	font-size:10px;
	z-index:2;
	padding:5px 0px 5px 0px;
	opacity:0;
	-moz-transition: opacity 0.4s ease; /* Firefox */
	-webkit-transition: opacity 0.4s ease; /* WebKit */
	-o-transition: opacity 0.4s ease; /* Opera */
	transition: opacity 0.4s ease; /* Standard */
}
.blocimage:hover .infos,.blocimage.selected .infos{
	opacity: 1;
}
.blocimage.selected .infos{
	width:calc(100% + 6px);
	left:-3px;
	bottom:-3px;
}
.blocimage .container {
	position:absolute;
	margin:10px 0px 0px 10px;
	z-index:10;
	opacity: 0;
	-moz-transition: opacity 0.4s ease; /* Firefox */
	-webkit-transition: opacity 0.4s ease; /* WebKit */
	-o-transition: opacity 0.4s ease; /* Opera */
	transition: opacity 0.4s ease; /* Standard */
}
.tagprive .blocimage .container {
	display:none;
}
.blocimage .container .checkmark{
	width:25px;
	height:25px;
}
.blocimage .container .checkmark::after{
	left: 6px;
	top: 2px;
	width: 9px;
	height: 12px;
	border-width: 0 3px 3px 0;
}
.blocimage:hover .container,.blocimage.selected .container{
	opacity: 1;
}
.blocimage .fa-video {
	color:white;
	font-size:40px;
}
.titremois {
	font-weight:bold;
	/*position: -webkit-sticky;
	position: sticky;*/
	width: 100%;
	top:0px;
	z-index:4;
	margin:0px;
	padding:10px 0px 10px 0px;
}


.groupes {
	display:flex;
	flex-wrap:wrap;
}
.groupe {
	display:block;
	padding:10px;
	background-color:var(--bleu);
	margin:0px 10px 10px 0px;
	color:white;
	text-decoration:none;
	font-family:Verdana;
	-moz-transition: background-color 0.2s ease;
	-webkit-transition: background-color 0.2s ease;
	-o-transition: background-color 0.2s ease;
	transition: background-color 0.2s ease;
}
.groupe:hover {
	background-color:#4b9b93;
}