/*********************************************
** 1.0 Global Settings
*********************************************/

/* ** 2.1 Loader ** */
/* ** 2.2 Typography ** */
/* ** 2.3 Boutons ** */


/*********************************************
** 2.0 Header
*********************************************/

/* ** 2.1 Login ** */
/* ** 2.2 Navigation ** */


/*********************************************.
** 3.0 Conteneurs
*********************************************/

/* ** 3.1 Heading ** */
/* ** 3.x Onglets ** */
/* ** 3.x Toolbox ** */

/*********************************************
** 4.0 Tableaux
*********************************************/

/* ** 4.1 Tableaux ** */
/* ** 4.2 Datatables ** */
/* ** 4.3 Tableau spéciaux ** */

/*********************************************
** 5.0 Formulaires
*********************************************/

/* ** 5.1 Labels / container ** */
/* ** 5.x Inputs ** */
/* ** 5.x Recherches ** */
/* ** 5.x Buttons ** */

/*********************************************
** 6.0 Fancybox
*********************************************/

/* ** 6.1 Confirm box ** */
/* ** 6.2 Fancybox preview temps ** */

/*********************************************
** 7.0 Login
*********************************************/

/* /////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////// */
/* /////////////////////////////////////////////////////////////////////// */

/*********************************************
** 1.0 Global Settings
*********************************************/

body {
	font-family: 'Jost', sans-serif;
	line-height: 1.25em;
	font-weight: 400;
}

body.viewport {
	display: flex;
	min-height: 100vh;
}


h1 {
	line-height: 1.25em;
	font-weight: 300;
	font-size: 40px;
	color: #a7b7db;
}
h1 em {
	display: block;
	font-style: normal;
	line-height: 1em;
	font-size: .5em;
	font-weight: 500;
	color: #000;
}

h3 {
	font-weight: 700;
	font-size: 18px;
	margin: 1em 0;
}

@media (min-width: 1440px) {
	h1 { font-size: 54px; }
	body.viewport { padding: 20px }
}
@media (max-width: 980px) { 
	body.viewport { 
		display: block; 
		padding-top: 60px;
		background-color: #dfe7f9;
	}
}
@media (max-width: 580px) { 
	h1 { 
		font-size: 32px;
		line-height: .9em;
	}
	h1 em { 
		margin-top: 10px;
		line-height: 1.25em;
	}
}



/* ** 2.1 Loader ** */
.massloader {
	position: fixed;
	z-index: 999;
	background-color: #2e3998;
	width: 100%; top: 0;
	left: 0; height: 100%;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
}
.massloader-spinner {
	width: 78px;
	height: 78px;
	border-radius: 50%;
	background-color: #fff;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
}
.coffee-cup {
    width: 20px;
    height: 24px;
    border: 2px #2e3998 solid;
    border-radius: 0px 0px 5px 5px;
    position: relative;
	margin-bottom: -10px;
	margin-left: -5px;
}
.coffee-cup:after, 
.coffee-cup:before{
    position: absolute;
    content: "";
}
.coffee-cup:after{
    width: 5px;
    height: 12px;
    border: 2px #2e3998 solid;
    border-left: none;
    border-radius: 0px 20px 20px 0px;
    left: 20px;
}
.coffee-cup:before{
    width: 2px;
    height: 6px;
    background-color: #2e3998;
    top: -10px;
    left: 2px;
    box-shadow: 5px 0px 0px 0px rgba(46,57,152,1),
                5px -5px 0px 0px rgba(46,57,152,1),
                10px 0px 0px 0px rgba(46,57,152,1);
    -webkit-animation: steam 1s linear infinite alternate;
       -moz-animation: steam 1s linear infinite alternate;
            animation: steam 1s linear infinite alternate;
}

@-webkit-keyframes steam{
    0%{height: 0px;}
    100%{height: 6px;}            
}
@-moz-keyframes steam{
    0%{height: 0px}
    100%{height: 6px;}            
}
@keyframes steam{
    0%{height: 0px}
    100%{height: 6px;}            
}

/* ** 2.2 Typography ** */

.fc-red { color: #c41111 }
.fc-green { color: #0eda1f }
/* ** 2.3 Boutons ** */

a.button-add {
	display: block;
	border-radius: 10px;
	padding: 15px 60px;
	margin-top: 2em;
	line-height: 20px;
	color: #2e3998;
	font-weight: 700;
	text-align: center;
	border: #2e3998 1px solid;
	background-repeat: no-repeat;
	background-color: transparent;
	background-position: 20px center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='%232e3998'%3E%3Cpath d='M17.08,8.08h-7.17V.92c0-.51-.41-.92-.92-.92s-.92,.41-.92,.92v7.17H.92c-.51,0-.92,.41-.92,.92s.41,.92,.92,.92h7.17v7.17c0,.51,.41,.92,.92,.92s.92-.41,.92-.92v-7.17h7.17c.51,0,.92-.41,.92-.92s-.41-.92-.92-.92Z'/%3E%3C/svg%3E");
	-webkit-background-size: 18px 18px;
	background-size: 18px 18px;
	transition: border-color .3s, background-color .3s, color .3s;
}
a.button-add:hover { 
	color: #fff;
	background-color: #2e3998;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='%23fff'%3E%3Cpath d='M17.08,8.08h-7.17V.92c0-.51-.41-.92-.92-.92s-.92,.41-.92,.92v7.17H.92c-.51,0-.92,.41-.92,.92s.41,.92,.92,.92h7.17v7.17c0,.51,.41,.92,.92,.92s.92-.41,.92-.92v-7.17h7.17c.51,0,.92-.41,.92-.92s-.41-.92-.92-.92Z'/%3E%3C/svg%3E"); 
}
.button-preview {
	display: inline-flex;
	align-items: center;
	border-radius: 10px;
	padding: 5px 10px;
	margin-top: 2em;
	line-height: 20px;
	font-size: 13px;
	text-align: center;
	text-transform: uppercase;
	color: #fff;
	border: #98a1d2 1px solid;
	background-color: #98a1d2;
	-webkit-background-size: 18px 18px;
	background-size: 18px 18px;
	transition: border-color .3s, background-color .3s, color .3s;
}
.button-preview svg {
	fill: #fff;
	width: 14px;
	height: 14px;
	margin-right: 10px;
}
.button-preview:hover {
	color: #fff;
	border: #2e3998 1px solid;
	background-color: #2e3998;
}


/*********************************************
** 2.0 Header
*********************************************/

#header {
	/*width: 260px;*/
	width: 16%;
	min-width: 200px;
	flex: 0 0 auto;
	position: sticky;
	align-self: flex-start;
	top: 0;
}
.header-logo {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	max-width: 110px;
	padding: 0 20px;
	height: 70px;
}
.header-logo svg {
	display: block;
	width: 100%;
	fill: #000;
	transition: fill .3s;
}
.header-logo:hover svg { fill: #2e3998; }

/* ** 2.1 Login ** */

.header-login {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	padding: 0 15px;
	height: 70px;
}
.header-login_thumb {
	display: block;
	flex: 0 0 auto;
	max-width: 50px;
	width: 25%;
	margin: 0 1em 0 0;
}
.header-login_infos {
	flex: 1 1 auto;
	width: 80%;
}
.header-login_infos__name {
	display: block;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	font-weight: 700;
	font-size: 14px;
	width: 100%;
}
.header-login_infos__logout {
	text-decoration: underline;
	font-size: 11px;
}
#menu-alt {
	z-index: 3;
	width: 60px;
	height: 60px;
	display: none;
	position: fixed;
	top: 0; left: 0;
	-webkit-transition: background-color .3s;
	-o-transition: background-color .3s;
	transition: background-color .3s;
}
#menu-alt:hover { background-color: #f2f2f2; }
#menu-alt .menu-icon {
	width: 60px;
	height: 60px;
	margin: 0 auto;
	padding: 15px 0;
}
#menu-alt .menu-icon__bar {
	background-color: #000;
    margin: 6px auto;
    height: 2px;
	width: 24px;
}
#menu-alt .menu-icon__bar.bar-top,
#menu-alt .menu-icon__bar.bar-bottom {
	-webkit-transition:margin .3s, -webkit-transform .3s;
	transition:margin .3s, -webkit-transform .3s;
	-o-transition:transform .3s, margin .3s;
	transition:transform .3s, margin .3s;
	transition:transform .3s, margin .3s, -webkit-transform .3s;
}
#menu-alt .menu-icon__bar.bar-middle {
	width: 18px;
	-webkit-transition:opacity .3s;
	-o-transition:opacity .3s;
	transition:opacity .3s;
}
#menu-alt .menu-text {
	margin-left: 5px;
	text-transform: uppercase;
	text-align: left;
	font-size: 9px;
	color: #fff;
}
body.menu-opened #menu-alt .menu-icon__bar.bar-top { 
	-webkit-transform: rotate(45deg); 
	    -ms-transform: rotate(45deg); 
	        transform: rotate(45deg);
	margin:14px auto;
}
body.menu-opened #menu-alt .menu-icon__bar.bar-bottom {
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	margin:-24px auto;
}
body.menu-opened #menu-alt .menu-icon__bar.bar-middle { opacity:0; background-color:#fff; }
body.menu-opened #menu-alt .menu-text__open { display: none }
body.menu-opened #menu-alt .menu-text__close { display: block }

#menu-overlay {
	display: none;
	position: fixed; 
	z-index: 1;
	top: 60px; left: 0; 
	right: 0; bottom: 0;
	background-color:rgba(223, 231, 249, .7);
	-webkit-transition:opacity .3s ease-out, background-color .3s ease-out;
	-o-transition:opacity .3s ease-out, background-color .3s ease-out;
	transition:opacity .3s ease-out, background-color .3s ease-out;
}
body.menu-opened #menu-overlay { display: block; }

@media (min-width: 1440px) {
	#header { top: 20px; }
	.header-login { padding: 0 20px; }
}
@media (max-width: 980px) {
	#header {
		position: fixed;
		top: 0; left: 0;
		width: 100%;
		height: 60px;
		z-index: 100;
		background-color: #fff;
	}
	.header-content {
		height: 60px;
		padding: 0 0 0 60px;
		display: flex;
		-ms-align-items: center;
		align-items: center;
		justify-content: space-between;
	}
	.header-logo { 
		padding: 0 10px;
		max-width: 90px;
		height: 60px;
	}
	.header-login { height: 60px; }
	.header-login_thumb { max-width: 40px; }
	#menu-alt { display: block; }
}

/* > OUTPUT
-------------------------------------------------------------------------------------------------------------------------------- */
.output-error,
.output-warning,
.output-success {
	position: relative;
	margin: 0 20px 20px;
	border-radius: 10px;
	padding: 20px 30px;
	line-height: 1.4em;
	color: #fff;
	cursor: pointer;
}
.output-error em,
.output-warning em,
.output-success em {
	display: none;
}
.output-error .fa,
.output-warning .fa,
.output-success .fa {
	position: absolute;
	top: 7px;
	right: 7px;
	background-position: center;
	background-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' fill='%23fff' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m12 10.93 5.719-5.72c.146-.146.339-.219.531-.219.404 0 .75.324.75.749 0 .193-.073.385-.219.532l-5.72 5.719 5.719 5.719c.147.147.22.339.22.531 0 .427-.349.75-.75.75-.192 0-.385-.073-.531-.219l-5.719-5.719-5.719 5.719c-.146.146-.339.219-.531.219-.401 0-.75-.323-.75-.75 0-.192.073-.384.22-.531l5.719-5.719-5.72-5.719c-.146-.147-.219-.339-.219-.532 0-.425.346-.749.75-.749.192 0 .385.073.531.219z'/%3E%3C/svg%3E");
	-webkit-background-size: 20px;
	background-size: 20px;
	width: 20px;
	height: 20px;
	transition: opacity .3s;
}
.output-error .fa::before,
.output-warning .fa::before,
.output-success .fa::before { content: "" }
.output-error .fa:hover,
.output-warning .fa:hover,
.output-success .fa:hover { opacity: .5 }
.output-error {
	background: #be0000;
	border: #be0000 1px solid;
}
.output-warning {
	background: #ff9c00;
	border: #ff9c00 1px solid;
}
.output-success {
	color: #fff;
	background: #5bc336;
	border: #5bc336 1px solid;
}
.errorfield {
	border-color: #be0000 !important;
}
.validfield {
	border-color: #a0f235 !important;
}

/* ** 2.2 Navigation ** */
#menu {
	padding: 20px 0;
}
#menu > ul {
	max-height: calc(100vh - 180px);
	overflow: auto;
}
.menu-item { width: 100%; }
.menu-item > a {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	padding: 10px;
	transition: color .3s;
}
.menu-item i {
	display: block;
	flex: 0 0 auto;
	width: 32px;
	height: 32px;
	padding: 4px;
}
.menu-item i svg {
	width: 24px;
	height: 24px;
	transition: fill .3s;
}
.menu-item span {
	width: calc(100% - 44px);
	padding: 0 10px;
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	flex: 1 1 auto;
}
.menu-item > a:hover { color: #2e3998; }
.menu-item > a:hover i svg { fill: #2e3998 }
.menu-item.active { background-color: #dfe7f9; }
.menu-item.active > a { font-weight: 700; }

@media (min-width: 1440px) {
	.menu-item { 
		margin-bottom: 10px;
		border-radius: 20px 0 0 20px;
	}
	.menu-item > a { padding: 10px 20px; }
	.menu-item i {
		width: 44px;
		height: 44px;
		padding: 10px;
	}
}
@media (max-width: 980px) {
	#menu {
		position: fixed;
		height: calc(100% - 60px);
		left: -200px; width: 200px;
		top: 60px; z-index: 1;
		background-color: #fff;
		transition: left .3s;
		padding: 0;
	}
	body.menu-opened #menu { left: 0 }
}


/*********************************************
** 3.0 Conteneurs
*********************************************/
#content {
	position: relative;
	background-color: #dfe7f9;
	flex: 1 1 auto;
}

.container {
	padding: 20px;
}
.container .row {
	max-width: inherit;
	padding: 0;
}
.container .wp100,
.container .wp66,
.container .wp50,
.container .wp33 {
	padding: 20px;
}

.container + .container { padding-top: 0 }

@media (min-width: 1600px) { 
	.container { 
		padding: 20px 5%; 
	}
}
@media (min-width: 1440px) { 
	#content {
		border-radius: 20px;
	}	
}
@media (max-width: 640px) {
	/*.container .container { padding: 0 }*/
}
@media (max-width: 580px) {
	.container { padding: 10px; }
	.container .wp100,
	.container .wp66,
	.container .wp50,
	.container .wp33 {
		padding: 0 10px;
	}
}

/*.row {
	display: flex;
	flex-wrap: wrap;
}*/

#content.content-split {
	padding: 0;
	display: flex;
	/*height: calc(100vh - 40px);*/
}
#content.content-split .container.split-left,
#content.content-split .container.split-right {
	padding: 0;
}
#content.content-split .container.split-left {
	flex: 2 2 auto;
}
#content.content-split .container.split-right {
	flex: 1 1 auto;
	background-color: #c9d4ed;
}
@media (min-width: 1440px) { 
	#content.content-split .container.split-left { border-radius: 20px 0 0 20px; }
	#content.content-split .container.split-right { border-radius: 0 20px 20px 0; }
}
@media (max-width: 1280px) {
	#content.content-split {
		flex-wrap: wrap;
	}
	#content.content-split .container.split-left {
		width: 100%;
		order: 1;
	}
	#content.content-split .container.split-right {
		width: 100%;
		order: 2;
	}
}

/* ** 3.1 Heading ** */

.heading {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 20px 20px 0;
}
.heading-title {
	flex: 0 0 auto;
	padding: 10px 20px;
	max-width: 100%;
	min-width: 25%;
}
.split-right .heading-title h1 { color: #fff; }
.heading .searchbar {
	flex: 1 1 auto;
	padding: 20px;
}
.heading .bt-retour {
	position: absolute;
	top: 50%;
	left: 25px;
	height: 32px;
	width: 32px;
	margin-top: -5px;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	border: #313e91 2px solid;
	border-radius: 50%;
	transition: background-color .3s;
}
.bt-retour + .heading-title { padding-left: 50px; }
.heading .bt-retour svg {
	display: block;
	width: 9px;
	height: 15px;
	fill: #313e91;
	margin-left: -.15em;
	transition: fill .3s;
}
.heading .bt-retour:hover { background-color: #313e91; }
.heading .bt-retour:hover svg { fill: #fff; }

@media (min-width: 1600px) { 
	.heading {
		padding: 20px 5% 0;
	}
	.heading .bt-retour {
		left: 30px;
		height: 40px;
		width: 40px;
		margin-top: -10px;
	}
	.heading .bt-retour svg {
		width: 12px;
		height: 20px;
	}
	.bt-retour + .heading-title { padding-left: 20px; }
}
@media (min-width: 1440px) { }
@media (max-width: 1280px) {
	.heading-title,
	.heading .searchbar { padding: 10px }
}
@media (max-width: 860px) {
	.heading {
		display: block;
	}
}
@media (max-width: 580px) {
	.heading { padding: 10px; }
	.heading .bt-retour { left: 15px; }
}
@media (max-width: 480px) { 
	.heading .bt-retour {
		left: 15px;
		top: 24px;
		margin-top: 0;
	}
	.bt-retour + .heading-title { 
		padding-left: 50px;
		padding-right: 50px;
	}
}

/* ** 3.x Onglets ** */
.tabs-container {
	width: 100%;
	padding: 20px;
}
.tabs-heading {
	display: flex;
	align-items: flex-end;
	border-bottom: #2e3998 4px solid;
}
.tabs-heading a {
	height: 50px;
	padding: 0 15px;
	text-align: center;
	line-height: 1.125em;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	border-radius: 10px 10px 0 0;
	background-color: #5762bc;
	text-transform: uppercase;
	margin-right: 10px;
	font-size: .875em;
	color: #d4d8f7;
	transition: background-color .3s, color .3s;
}
.tabs-heading a:last-child { margin-right: 0 }
.tabs-heading a:hover { color: #fff; }
.tabs-heading a.tab-active {
	background-color: #2e3998;
	color: #fff;
	height: 54px;
	padding-top: 4px;
	font-weight: 700;
}
.tabs-block { padding-top: 30px; }
.format-tab .tabs-block:not(.tab-active) { display: none; }

@media (min-width: 1440px) { 
	.tabs-container_heading a { padding: 0 30px }
}
@media (max-width: 1280px) { 
	.tabs-container { padding: 10px; }
}
@media (max-width: 980px) {
	.tabs-heading a {
		height: 36px;
		padding: 0 10px;
		font-size: 12px;
		margin-right: 4px;
	}
	.tabs-heading a.tab-active {
		height: 40px;
		padding: 4px 10px 0;
		font-size: 12px;
	}
}
@media (max-width: 640px) {
	/*.tabs-container { padding: 20px; }*/
}
/* --- */
.tabs-heading.iconized a {
	position: relative;
	padding-left: 30px;
	flex: 25%;
	font-size: 12px;
}
.tabs-heading.iconized a i {
	width: 50px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	left: 0; top: 0;
}
.tabs-heading.iconized a i svg {
	display: block;
	width: 24px;
	height: 24px;
	fill: #abb0dd;
	transition: fill .3s;
}
.tabs-heading.iconized a:hover i svg,
.tabs-heading.iconized a.tab-active i svg { fill: #fff; }

@media (max-width: 1280px) { }
@media (max-width: 740px) {
	.tabs-heading.iconized {
		flex-wrap: wrap;
		padding-bottom: 5px;
	}
	.tabs-heading.iconized a {
		margin: 5px;
		border-radius: 10px;
		flex: 30%;
	}
	.tabs-heading.iconized a.tab-active {
		height: 36px;
		padding-top: 0;
		padding-bottom: 0;
		font-size: 12px;
	}
}
@media (max-width: 480px) {
	.tabs-heading.iconized a {
		flex: 45%;
	}
}

/* ** 3.x Toolbox ** */

#toolbox {
	top: 0;
	position: sticky;
	background-color: #2e3998;
	flex: 0 0 auto;
	width: 12%;
	max-width: 200px;
	height: 100vh;
	order: 2
}
#toolbox + .split-left {
	order: 1;
}
#toolbox ul {
	height: 100%;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
#toolbox ul li { 
	flex: 25%;
	width: 100%;
}
#toolbox ul li a {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-align: center;
	color: #fff;
	width: 100%;
	height: 100%;
	border-top: transparent 1px solid;
	border-bottom: transparent 1px solid;
	transition: box-shadow .3s, border-color .3s;
}
#toolbox ul li i { 
	display: block; 
	margin-bottom: 10%; 
}
#toolbox ul li i svg {
	display: block;
	width: 54px;
	height: 54px;
	margin: 0 auto;
	fill: rgba(255,255,255,.5);
	transition: fill .3s, transform .5s;
}
#toolbox ul li strong { }
#toolbox ul li:first-child a {
	border-top: none;
}
#toolbox ul li:last-child a {
	border-bottom: none;
}
#toolbox ul li:last-child:first-child a {
	    border-radius: 0 20px 20px 0;
}
#toolbox ul li:nth-child(1) a { background-color: #2e3998; }
#toolbox ul li:nth-child(2) a { background-color: #434da5; }
#toolbox ul li:nth-child(3) a { background-color: #5762bc ; }
#toolbox ul li:nth-child(4) a { background-color: #727cd1; }
#toolbox ul li:nth-child(5) a { background-color: #939deb; }
#toolbox ul li a:hover {
	border-color: #fff;
	box-shadow: rgba(0,0,0,.3) 0 0 1em;
}
#toolbox ul li a:hover i svg { 
	fill: #fff;
	transform: scale(1.2);
}

@media (min-width: 1440px) { 
	#toolbox {
		top: 20px;
		border-radius: 0 20px 20px 0;
		height: calc(100vh - 40px);
	}
	#toolbox ul li:first-child a {
		border-radius: 0 20px 0 0;
	}
	#toolbox ul li:last-child a {
		border-radius: 0 0 20px 0;
	}
}
@media (max-width: 1280px) {
	#toolbox {
		order: 1;
		position: fixed;
		z-index: 99; top: auto;
		bottom: 0; left: 200px;
		width: calc(100% - 200px);
		height: 70px;
		max-width: 100%;
	}
	#content.content-split #toolbox + .split-left {
		padding-bottom: 70px;
	}
	#toolbox + .split-left {
		order: 2;
		width: 100%;
	}
	#toolbox ul {
		flex-direction: row;
	}
	#toolbox ul li a { 
		padding: 10px;
		height: 70px;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		border: none 
	}
	#toolbox ul li i { 
		flex: 0 0 auto;
		margin: 0 10px 0 0;
	}
	#toolbox ul li i svg { 
		width: 32px;
		height: 32px;
	}
	#toolbox ul li strong { 
		font-size: 13px; 
		line-height: 1.25em;
		text-align: left;
		flex: 0 0 auto;
	}
}
@media (max-width: 980px) {
	#toolbox {
		left: 0;
		width: 100%;
	}
}
@media (max-width: 580px) {
	#toolbox { height: 50px; }
	#content.content-split #toolbox + .split-left { padding-bottom: 50px; }
	#toolbox ul li a { height: 50px; }
	#toolbox ul li i { margin: 0 }
	#toolbox ul li strong { display: none; }
}

/*********************************************
** 4.0 Tableaux
*********************************************/

/* ** 4.1 Tableaux ** */
table {
	width: 100%;
	position: relative;
	border-collapse: separate;
	border-spacing: 0 10px;
}
table thead { }
table thead tr { position: relative; }
table thead th {
	padding: 10px 15px;
	white-space: nowrap;
	text-align: left;
	font-weight: 700;
	font-size: .875em;
	color: #000;
}
table tbody { }
table tbody tr { position: relative; }
table tbody td,
table tbody th {
	text-align: left;
	vertical-align: middle;
	padding: 10px;
	font-size: 14px;
	background-repeat: no-repeat;
	background-position: 0 center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='2px' height='22px'%3E%3Cdefs%3E%3Cfilter id='Filter_0'%3E%3CfeFlood flood-color='rgb(206, 215, 235)' flood-opacity='1' result='floodOut' /%3E%3CfeComposite operator='atop' in='floodOut' in2='SourceGraphic' result='compOut' /%3E%3CfeBlend mode='normal' in='compOut' in2='SourceGraphic' /%3E%3C/filter%3E%3C/defs%3E%3Cg filter='url(%23Filter_0)'%3E%3Cpath fill-rule='evenodd' fill='rgb(200, 213, 242)' d='M-0.000,-0.000 L1.777,-0.000 L1.777,22.000 L-0.000,22.000 L-0.000,-0.000 Z'/%3E%3C/g%3E%3C/svg%3E");
	background-color: rgba(255,255,255,.4);
	transition: background-color .3s;
}
table tbody tr:hover td,
table tbody tr:hover th {
	background-color: rgba(255,255,255,.6);
}
table tbody tr td span.fc-red {
	background: 0 center no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' fill='%23c41111' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m12.002 21.534c5.518 0 9.998-4.48 9.998-9.998s-4.48-9.997-9.998-9.997c-5.517 0-9.997 4.479-9.997 9.997s4.48 9.998 9.997 9.998zm0-8c-.414 0-.75-.336-.75-.75v-5.5c0-.414.336-.75.75-.75s.75.336.75.75v5.5c0 .414-.336.75-.75.75zm-.002 3c-.552 0-1-.448-1-1s.448-1 1-1 1 .448 1 1-.448 1-1 1z' fill-rule='nonzero'/%3E%3C/svg%3E");
	background-size: 18px 18px;
	display: inline-block;
	padding-left: 20px;
}
table tbody tr td span.fc-green {
	background: 0 center no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' fill='%230eda1f' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m12.002 21.534c5.518 0 9.998-4.48 9.998-9.998s-4.48-9.997-9.998-9.997c-5.517 0-9.997 4.479-9.997 9.997s4.48 9.998 9.997 9.998zm0-8c-.414 0-.75-.336-.75-.75v-5.5c0-.414.336-.75.75-.75s.75.336.75.75v5.5c0 .414-.336.75-.75.75zm-.002 3c-.552 0-1-.448-1-1s.448-1 1-1 1 .448 1 1-.448 1-1 1z' fill-rule='nonzero'/%3E%3C/svg%3E");
	background-size: 18px 18px;
	display: inline-block;
	padding-left: 20px;
}
table tbody th { font-weight: 700; }
table tr td:first-child,
table tr th:first-child {
	background-image: none;
	border-radius: 10px 0 0 10px;
	text-align: left;
}
table tr td.text-center,
table tr th.text-center {
	text-align: center;
}
table tr td:last-child,
table tr th:last-child {
	border-radius: 0 10px 10px 0;
	padding-right: 0;
}
@media (min-width: 1440px) { 
	table tbody td,
	table tbody th { padding: 15px; }
	table tr td:first-child, 
	table tr th:first-child {
		padding-left: 20px;
	}
}

.cell-date { 
	width: 120px;
	text-align: center;
}
td.cell-title { 
	font-weight: 700;
	cursor: pointer;
	white-space: nowrap;
	text-overflow: ellipsis;
	max-width: 300px;
	overflow: hidden;
}
td.cell-clickable { 
	cursor: pointer;
	position: relative;
}
td.cell-title:hover { color: #2e3998 }

td.cell-visible,
td[data-visible='0'],
td[data-visible='1'] {
	width: 20px;
	padding: 0;
	text-align: center;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px 20px;
}

td[data-visible='0'] { background-image: url("data:image/svg+xml,%3Csvg fill='%23bd0900' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m17.069 6.546 2.684-2.359c.143-.125.32-.187.497-.187.418 0 .75.34.75.75 0 .207-.086.414-.254.562l-16.5 14.501c-.142.126-.319.187-.496.187-.415 0-.75-.334-.75-.75 0-.207.086-.414.253-.562l2.438-2.143c-1.414-1.132-2.627-2.552-3.547-4.028-.096-.159-.144-.338-.144-.517s.049-.358.145-.517c2.111-3.39 5.775-6.483 9.853-6.483 1.815 0 3.536.593 5.071 1.546zm2.318 1.83c.967.943 1.804 2.013 2.475 3.117.092.156.138.332.138.507s-.046.351-.138.507c-2.068 3.403-5.721 6.493-9.864 6.493-1.298 0-2.553-.313-3.73-.849l2.624-2.307c.352.102.724.156 1.108.156 2.208 0 4-1.792 4-4 0-.206-.016-.408-.046-.606zm-4.932.467c-.678-.528-1.53-.843-2.455-.843-2.208 0-4 1.792-4 4 0 .741.202 1.435.553 2.03l1.16-1.019c-.137-.31-.213-.651-.213-1.011 0-1.38 1.12-2.5 2.5-2.5.474 0 .918.132 1.296.362z' fill-rule='nonzero'/%3E%3C/svg%3E"); }
td[data-visible='1'] { background-image: url("data:image/svg+xml,%3Csvg fill='%2323c203' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m11.998 5c-4.078 0-7.742 3.093-9.853 6.483-.096.159-.145.338-.145.517s.048.358.144.517c2.112 3.39 5.776 6.483 9.854 6.483 4.143 0 7.796-3.09 9.864-6.493.092-.156.138-.332.138-.507s-.046-.351-.138-.507c-2.068-3.403-5.721-6.493-9.864-6.493zm.002 3c2.208 0 4 1.792 4 4s-1.792 4-4 4-4-1.792-4-4 1.792-4 4-4zm0 1.5c1.38 0 2.5 1.12 2.5 2.5s-1.12 2.5-2.5 2.5-2.5-1.12-2.5-2.5 1.12-2.5 2.5-2.5z' fill-rule='nonzero'/%3E%3C/svg%3E"); }

td.cell-edit,
td.cell-delai,
td.cell-print,
td.cell-preview,
td.cell-delete {
	width: 43px;
	max-width: 43px;
	padding: 0;
	background-image: none;
	text-align: right;
	padding: 0;
}
td.cell-edit a,
td.cell-delai a,
td.cell-print a,
td.cell-preview a,
td.cell-delete a {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	margin: 0 0 0 auto;
	border-radius: 10px;
	background-position: center;
	background-repeat: no-repeat;
	background-color: #fff;
	background-size: 38px 38px;
	transition: background-color .3s;
}
td.cell-edit a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M17.31,29.16l-.8,3.94a.33.33,0,0,0,.39.39l3.94-.8.17-.1,8.47-8.47a.16.16,0,0,0,0-.24l-3.36-3.36a.16.16,0,0,0-.24,0L17.41,29Z'%3E%3C/path%3E%3Cpath d='M33.25,19.15l-2.4-2.4a.86.86,0,0,0-1.21,0l-1.77,1.77a.24.24,0,0,0,0,.35l3.26,3.26a.24.24,0,0,0,.35,0l1.77-1.77A.86.86,0,0,0,33.25,19.15Z'%3E%3C/path%3E%3C/svg%3E"); }
td.cell-edit a:hover {
	background-color: #2e3998;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23ffffff'%3E%3Cpath d='M17.31,29.16l-.8,3.94a.33.33,0,0,0,.39.39l3.94-.8.17-.1,8.47-8.47a.16.16,0,0,0,0-.24l-3.36-3.36a.16.16,0,0,0-.24,0L17.41,29Z'%3E%3C/path%3E%3Cpath d='M33.25,19.15l-2.4-2.4a.86.86,0,0,0-1.21,0l-1.77,1.77a.24.24,0,0,0,0,.35l3.26,3.26a.24.24,0,0,0,.35,0l1.77-1.77A.86.86,0,0,0,33.25,19.15Z'%3E%3C/path%3E%3C/svg%3E");
}
td.cell-delai a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M22.05,12.5h5.04c.28,0,.5,.22,.5,.5v2.5c0,.28-.23,.5-.5,.5h-5.03c-.28,0-.5-.23-.5-.5v-2.5c0-.28,.22-.5,.5-.5Z'/%3E%3Cpath d='M35.33,18.07l-1.26-1.26c-.23-.23-.61-.23-.84,0l-1.26,1.26c-.23,.23-.23,.61,0,.84l1.26,1.26c.23,.23,.61,.23,.84,0l1.26-1.26c.23-.23,.23-.61,0-.84Z'/%3E%3Cpath d='M24.57,17.5c-5.56,0-10.07,4.48-10.07,10,0,5.52,4.51,10,10.07,10s10.07-4.48,10.07-10c0-5.52-4.51-10-10.07-10Zm6.01,11h-5v5h-2v-5h-5v-2h5v-5h2v5h5v2Z'/%3E%3C/svg%3E"); }
td.cell-delai a:hover {
	background-color: #2e3998;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23ffffff'%3E%3Cpath d='M22.05,12.5h5.04c.28,0,.5,.22,.5,.5v2.5c0,.28-.23,.5-.5,.5h-5.03c-.28,0-.5-.23-.5-.5v-2.5c0-.28,.22-.5,.5-.5Z'/%3E%3Cpath d='M35.33,18.07l-1.26-1.26c-.23-.23-.61-.23-.84,0l-1.26,1.26c-.23,.23-.23,.61,0,.84l1.26,1.26c.23,.23,.61,.23,.84,0l1.26-1.26c.23-.23,.23-.61,0-.84Z'/%3E%3Cpath d='M24.57,17.5c-5.56,0-10.07,4.48-10.07,10,0,5.52,4.51,10,10.07,10s10.07-4.48,10.07-10c0-5.52-4.51-10-10.07-10Zm6.01,11h-5v5h-2v-5h-5v-2h5v-5h2v5h5v2Z'/%3E%3C/svg%3E");
}
td.cell-print a { 
	background-color: #2e3998;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23ffffff'%3E%3Cpolygon points='28.68 36.36 28.68 30.7 26.75 30.7 26.75 36.36 24.08 33.71 22.72 35.06 27.72 40 32.71 35.06 31.35 33.71 28.68 36.36'/%3E%3Cpath d='M18.45,20.58c.14-.16,.21-.39,.21-.69s-.09-.52-.28-.64c-.18-.13-.47-.19-.86-.19h-.67v1.76h.8c.39,0,.66-.08,.8-.24Z'/%3E%3Cpath d='M23.98,21.85c.29-.27,.44-.66,.44-1.18s-.15-.91-.44-1.19c-.29-.28-.74-.42-1.34-.42h-.66v3.18h.75c.54,0,.96-.13,1.25-.4Z'/%3E%3Cpath d='M14.71,10v6.25h-1.71v8.57h1.71v8.81h6.07v-1.9h-4.15v-6.91h15.89v-8.57h-15.89v-4.35h18.45v21.73h1.92V10H14.71Zm11.92,8.05h3.64v1.03h-2.45v1.13h2.33v1.03h-2.33v2.05h-1.18v-5.24Zm-5.83,0h1.87c.94,0,1.67,.23,2.17,.69,.51,.46,.76,1.09,.76,1.91s-.25,1.46-.74,1.93c-.49,.47-1.24,.71-2.25,.71h-1.81v-5.24Zm-1.48,.47c.37,.31,.56,.79,.56,1.44s-.19,1.12-.57,1.42-.96,.45-1.75,.45h-.7v1.46h-1.18v-5.24h1.87c.81,0,1.41,.16,1.78,.47Z'/%3E%3C/svg%3E");
}
td.cell-print a:hover { background-color: #000; }
td.cell-preview a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M35.14,33.41,29,27.22A8,8,0,1,0,27.22,29l6.19,6.19a1.24,1.24,0,0,0,.87.36,1.23,1.23,0,0,0,.86-2.09Zm-16.57-7a5.54,5.54,0,1,1,3.93,1.63A5.51,5.51,0,0,1,18.57,26.42Z'%3E%3C/path%3E%3C/svg%3E"); }
td.cell-preview a:hover {
	background-color: #2e3998;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23ffffff'%3E%3Cpath d='M35.14,33.41,29,27.22A8,8,0,1,0,27.22,29l6.19,6.19a1.24,1.24,0,0,0,.87.36,1.23,1.23,0,0,0,.86-2.09Zm-16.57-7a5.54,5.54,0,1,1,3.93,1.63A5.51,5.51,0,0,1,18.57,26.42Z'%3E%3C/path%3E%3C/svg%3E");
}
td.cell-delete a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M32,37H18a2,2,0,0,1-2-2V18H15V16h6V14.5A1.5,1.5,0,0,1,22.5,13h5A1.5,1.5,0,0,1,29,14.5V16h6v2H34V35A2,2,0,0,1,32,37Zm0-19H18V34.5a.5.5,0,0,0,.5.5h13a.5.5,0,0,0,.5-.5Zm-9,4a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm6,0a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm-2-7H23v1h4Z'%3E%3C/path%3E%3C/svg%3E"); }
td.cell-delete a:hover {
	background-color: #bd0900;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23ffffff'%3E%3Cpath d='M32,37H18a2,2,0,0,1-2-2V18H15V16h6V14.5A1.5,1.5,0,0,1,22.5,13h5A1.5,1.5,0,0,1,29,14.5V16h6v2H34V35A2,2,0,0,1,32,37Zm0-19H18V34.5a.5.5,0,0,0,.5.5h13a.5.5,0,0,0,.5-.5Zm-9,4a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm6,0a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm-2-7H23v1h4Z'%3E%3C/path%3E%3C/svg%3E");
}
@media (min-width: 1440px) { 
	td.cell-edit,
	td.cell-delai,
	td.cell-print,
	td.cell-preview,
	td.cell-delete {
		width: 60px;
		max-width: 60px;
	}
	td.cell-edit a,
	td.cell-delai a,
	td.cell-print a,
	td.cell-preview a,
	td.cell-delete a {
		width: 50px;
		height: 50px;
		background-size: 50px 50px;
	}
}

td.cell-delai { position: relative; }
td.cell-delai .pastille {
	position: absolute;
	top: -5px;
	right: -5px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: #2e3998;
}
td.cell-preview .pastille-1 { background-color: #269400; }
td.cell-preview .pastille-2 { background-color: #FAD650; }
td.cell-preview .pastille-3 { background-color: #9C0002; }

td.cell-preview { position: relative; }
td.cell-preview .pastille {
	position: absolute;
	top: -5px;
	right: -5px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: #2e3998;
}
td.cell-preview .pastille-1 { background-color: #269400; }
td.cell-preview .pastille-2 { background-color: #FAD650; }
td.cell-preview .pastille-3 { background-color: #9C0002; }


td.cell-safe    { color: #269400; }
td.cell-warning { color: #D56707; }
td.cell-danger  { color: #9C0002; }

table tr .cell-delete-all,
table tr .cell-delete-batch {
	position: absolute;
	width: 60px; 
	left: -60px; 
	top: 0;
	height: 100%;
	padding: 5px;
	padding: 0 !important;
	background-color: transparent !important;
	background-image: none !important;	
}
table tr .cell-delete-all { top: -7px; }
table tr .cell-delete-all label,
table tr .cell-delete-batch label {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	width: 50px; height: 50px;
	border-radius: 50%;
	transition: background-color .3s;
}
table tr .cell-delete-all label:hover,
table tr .cell-delete-batch label:hover {
	background-color: rgba(87,98,188,.2);
}
table .delete-batch-button {
	display: table-caption;
	text-align: left;
	width: 100%;
}
table .delete-batch-button button {
	border: #bd0900 1px solid;
	background-color: #bd0900;
	display: none;
	color: #fff;
	margin: 15px 0 0 -45px;
	padding: 10px 20px;
	font-weight: 700;
	border-radius: 10px;
	transition: background-color .3s, border-color .3s;
}
table .delete-batch-button button:hover {
	background-color: #000;
	border-color: #000;
}
table thead th.sorting::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 13'%3E%3Cpath fill='%238ea0ca' d='M3.5,0,7,5H0Z'/%3E%3Cpath fill='%238ea0ca' d='M3.5,13,0,8H7Z'/%3E%3C/svg%3E");
	margin-left: 8px;
	margin-top: -5px;
	display: inline-block;
	vertical-align: middle;
	width: 7px;
	height: 13px;
}
table thead th.sorting_asc::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 13'%3E%3Cpath fill='%232e3998' d='M3.5,0,7,5H0Z'/%3E%3Cpath fill='%238ea0ca' d='M3.5,13,0,8H7Z'/%3E%3C/svg%3E");
	margin-left: 8px;
	margin-top: -5px;
	display: inline-block;
	vertical-align: middle;
	width: 7px;
	height: 13px;
}
table thead th.sorting_desc::after {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 13'%3E%3Cpath fill='%238ea0ca' d='M3.5,0,7,5H0Z'/%3E%3Cpath fill='%232e3998' d='M3.5,13,0,8H7Z'/%3E%3C/svg%3E");
	margin-left: 8px;
	margin-top: -5px;
	display: inline-block;
	vertical-align: middle;
	width: 7px;
	height: 13px;
}

@media (max-width: 1600px) { 
	table.deletable-items { padding-left: 20px; }
	table tr .cell-delete-all, 
	table tr .cell-delete-batch {
		width: 38px;
		top: 50%;
		left: -42px;
	}
	table tr .cell-delete-all { top: 0 }
	table tr .cell-delete-batch { top: -5px }
	table tr .cell-delete-all label, 
	table tr .cell-delete-batch label {
		width: 38px;
		height: 38px;
	}
	table tr .cell-delete-batch label {
		left: 0;
		right: auto;
	}
}
@media (max-width: 860px) { 
	
	table { border-spacing: 0 60px; }
	table thead { 
		position: relative;
		top: -40px;
	}
	table tbody {
		position: relative;
		top: -80px;
	}
	table thead th.cell-visible,
	table thead th.cell-edit,
	table thead th.cell-delai,
	table thead th.cell-print,
	table thead th.cell-preview,
	table thead th.cell-delete { 
		width: 0; padding: 0;
		font-size: 0;
		max-width: 0;
	}
	table tbody tr::after {
		content: "";
		position: absolute;
		bottom: -50px; right: 0;
		width: 100%; height: 50px;
		z-index: 0; 
		border-top: rgb(206, 215, 235) 1px solid;
		/*border-radius: 0 0 10px 10px;*/
		background-color: rgba(255,255,255,.4);
	}
	table tr td:first-child, 
	table tr th:first-child { border-radius: 0 }
	
	table tbody tr:hover td,
	table tbody tr:hover th { background-color: rgba(255,255,255,.4); }
	
	td.cell-visible, 
	td[data-visible='0'],
	td[data-visible='1'] {
		position: absolute;
		width: 28px;
		height: 28px;
		border-radius: 50%;
		background-color: #fff;
		top: -14px; left: -14px;
	}
	
	td.cell-edit,
	td.cell-delai,
	td.cell-print,
	td.cell-preview {
		position: absolute;
		background-color: transparent;
		padding: 0;
		width: 38px;
		height: 38px;
		bottom: -43px;
		z-index: 2;
	}
	td.cell-edit,
	td.cell-preview { left: 10px }
	td.cell-delai { left: 10px; }
	td.cell-edit + td.cell-preview { left: 53px }
		
	td.cell-edit a, 
	td.cell-delai a,
	td.cell-print a,
	td.cell-preview a, 
	td.cell-delete a {
		width: 38px;
		height: 38px;
	}
	td.cell-print { right: 10px; }
	td.cell-delete {
		position: absolute;
		background-color: transparent !important;
		max-width: 100%;
		bottom: -5px;
		width: 100%;
		padding: 0;
		height: 0;
		left: 0;
		z-index: 1;
	}
	td.cell-delete a { 
		position: absolute;
		z-index: 1;
		right: 10px; top: 0;
		background-color: #2e3998;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23ffffff'%3E%3Cpath d='M32,37H18a2,2,0,0,1-2-2V18H15V16h6V14.5A1.5,1.5,0,0,1,22.5,13h5A1.5,1.5,0,0,1,29,14.5V16h6v2H34V35A2,2,0,0,1,32,37Zm0-19H18V34.5a.5.5,0,0,0,.5.5h13a.5.5,0,0,0,.5-.5Zm-9,4a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm6,0a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm-2-7H23v1h4Z'%3E%3C/path%3E%3C/svg%3E"); 
	}
	td.cell-delete a:hover {
		background-color: #bd0900;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23ffffff'%3E%3Cpath d='M32,37H18a2,2,0,0,1-2-2V18H15V16h6V14.5A1.5,1.5,0,0,1,22.5,13h5A1.5,1.5,0,0,1,29,14.5V16h6v2H34V35A2,2,0,0,1,32,37Zm0-19H18V34.5a.5.5,0,0,0,.5.5h13a.5.5,0,0,0,.5-.5Zm-9,4a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm6,0a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm-2-7H23v1h4Z'%3E%3C/path%3E%3C/svg%3E");
	}
	table.deletable-items { padding-left: 20px; }
	table tr .cell-delete-all, 
	table tr .cell-delete-batch {
		width: 38px;
		height: 38px;
		left: -42px;
	}
	table tr .cell-delete-all { top: 0 }
	table tr .cell-delete-batch { top: -5px }
	table tr .cell-delete-all label, 
	table tr .cell-delete-batch label {
		width: 38px;
		height: 38px;
		left: 0;
		right: auto;
	}
}
@media (max-width: 640px) { 
	table { border-spacing: 0; }
	table thead { visibility: hidden; }
	table thead tr th { padding: 0; font-size: 0; }
	table thead,
	table tbody { top: 0 }
	table,
	table thead,
	table tbody { display: block; }
	table tbody tr {
		display: flex;
		flex-direction: column;
		border-radius: 10px;
		background-color: rgba(255,255,255,.4);
		padding-right: 48px;
		margin-bottom: 20px;
		padding-bottom: 54px;
		min-height: 150px;	
	}
	table tbody tr::after {
		display: none;
	}
	/*table tbody tr:hover,
	table tbody tr:active {
		background-color: rgba(255,255,255,.6);
	}*/
	table tbody td, 
	table tbody th {
		order: 2;
		width: 100%;
		font-size: 14px;
		display: block;
		text-align: left;
		padding: 2px 15px;
		background: none;
	}
	table tbody td:first-child {
		padding-top: 12px;
	}
	table tbody tr:hover td,
	table tbody tr:hover th {
		background-color: transparent;
	}
	table tbody td.cell-visible,
	table tbody td.cell-edit,
	table tbody td.cell-print,
	table tbody td.cell-delai,
	table tbody td.cell-preview,
	table tbody td.cell-delete {
		padding: 0;
		bottom: 7px;
	}
	table tbody td.cell-delete { height: 38px }
	table tbody td.text-center { text-align: left; }
	table tbody td.hide-lg,
	table tbody td.hide-md,
	table tbody td.hide-smd { display: block; }
	table tbody td.cell-title {
		order: 1;
		font-size: 16px;
	}
	.cell-date { 
		width: 100%;
		text-align: left
	}
	td.text-center { text-align: left }
	table.deletable-items { padding-left: 0; }
	table tr .cell-delete-batch {
		top: 0px;
		left: auto;
		right: 55px;
		bottom: 0;
	}
}

/* -- tableau readonly -- */
table.table-read { }
table.table-read thead th {
	font-weight: 700;
	font-size: .875em;
	color: #000;
}
table.table-read tbody td {
	border: #2e3998 1px solid;
	background-color: transparent;
	border-right: none;
	border-left: none;
}
table.table-read tbody tr:hover td { background-color: transparent; }
table.table-read tbody td:first-child { border-left: #2e3998 1px solid; }

@media (max-width: 860px) { 
	table.table-read tbody td,
	table.table-read tbody td:first-child { 
		border: none;
		background-color: #a7b7db;
	}
	table.table-read tbody tr:hover td { background-color: #a7b7db; }
	table.table-read tbody tr::after { background-color: #a7b7db; }
}
@media (max-width: 860px) { 
	table.table-read tbody td,
	table.table-read tbody td:first-child { 
		background-color: transparent;
	}
	table.table-read tbody tr { background-color: #a7b7db; }
}
@media (max-width: 640px) { 
	table.table-read thead tr th { padding: 0; font-size: 0; }
}

/* ** 4.2 Datatables ** */

.dataTable thead th {
	color: #2e3998;	
	font-weight: 400;
}

.dataTables_wrapper {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}
.dataTables_wrapper table {
	width: 100% !important;
	flex: 1 1 auto;
	margin-bottom: 15px;
}
.dataTables_length {
	flex: 0 0 auto;
	max-width: 50%;
}
.dataTables_length label {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	font-size: 13px;
	padding: 0;
}
.dataTables_length label select { 
	margin: 0 10px;
	padding: 0 10px;
	min-width: 60px;
}
.dataTables_filter {
	flex: 0 0 auto;
	width: 50%;
	max-width: 280px;
}
.dataTables_filter label {
	font-size: 0;
	line-height: 0;
	padding: 0;
	/*text-indent: 9999px;*/
}
.dataTables_filter label input {
	background: #fff right 10px center no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 21 21' fill='%23000'%3E%3Cpath d='M20.64,18.91l-6.19-6.19a8,8,0,1,0-1.73,1.73l6.19,6.19a1.24,1.24,0,0,0,.87.36,1.23,1.23,0,0,0,.86-2.09Zm-16.57-7a5.55,5.55,0,1,1,7.85-7.85,5.55,5.55,0,0,1-7.85,7.85Z'/%3E%3C/svg%3E");
	background-size: 16px 16px;
	padding: 0 24px 0 10px;
}
.dataTables_info {
	max-width: 40%;
	font-size: .875em;
	opacity: .5;
}
/* pagination */
.dataTables_paginate,
.dataTables_paginate span {
	display: flex;
	justify-content: center;
	flex: 0 0 auto;
}
.dataTables_paginate a.paginate_button {
	width: 30px;
	cursor: pointer;
	line-height: 30px;
	text-align: center;
	margin: 0 3px;
	color: #2e3998;
	border-radius: 10px;
	border: #2e3998 1px solid;
	transition: background-color .3s, border-color .3s, color .3s;
}
.dataTables_paginate a.paginate_button.current {
	background-color: #5762bc;
	border-color: #5762bc;
	color: #fff;
}
.dataTables_paginate a.paginate_button:hover,
.dataTables_paginate a.paginate_button.current:hover {
	background-color: #2e3998;
	border-color: #2e3998;
	color: #fff;
}
.dataTables_paginate .next,
.dataTables_paginate .previous {
	font-size: 0;
	background-color: #2e3998;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 10px 16px;
}
.dataTables_paginate .next { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 16'%3E%3Cpolygon fill='%23ffffff' points='10 8 1.59 0 0 1.51 6.81 8 0 14.48 1.59 16 10 8'/%3E%3C/svg%3E"); }
.dataTables_paginate .previous { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 16'%3E%3Cpolygon fill='%23ffffff' points='0 8 8.41 16 10 14.49 3.19 8 10 1.52 8.41 0 0 8'/%3E%3C/svg%3E"); }
.dataTables_paginate .next.disabled,
.dataTables_paginate .previous.disabled,
.dataTables_paginate .next.disabled:hover,
.dataTables_paginate .previous.disabled:hover {
	background-color: rgba(46,57,152,.2);
	border-color: transparent;
}

@media (max-width: 860px) { 
	.dataTables_info { 
		width: 100%;
		max-width: 100%;
		text-align: center;
	}
	.dataTables_paginate { width: 100%; padding: 10px 0; }
	.dataTables_paginate span { }
}
@media (max-width: 480px) { 
	.dataTables_length { display: none; }
	.dataTables_filter {
		max-width: 100%;
		width: 100%;
	}
}

/* ** 4.3 Tableau spéciaux ** */
#table-intervention {
	border-spacing: 8px;
}
#table-intervention td,
#table-intervention th {
	text-align: center;
}
#table-intervention td:first-child,
#table-intervention th:first-child {
	text-align: left;
}
#table-intervention thead th,
#table-intervention tbody th {
	background-color: transparent;
	border-radius: 0;
	font-weight: 700;
	color: #000;
}
#table-intervention thead th em,
#table-intervention tbody th em {
	font-weight: 400;
	font-style: normal;
}
#table-intervention tbody td {
	border-radius: 10px;
	background-image: none;
}
#table-intervention tbody td.total {
	background-color: #98a1d2;
	font-weight: 700;
	color: #fff;
}
@media (max-width: 860px) { 
	#table-intervention thead,
	#table-intervention tbody { top: 0 }
	#table-intervention tbody tr::after { display: none; }
}
@media (max-width: 640px) { 
	#table-intervention {
		display: table;
	}
	#table-intervention thead {
		display: table-header-group;
		visibility: visible;
	}
	#table-intervention tbody  { 
		display: table-row-group;
	}
	#table-intervention thead th { font-size: 12px; }
	#table-intervention tr { display: table-row }
	#table-intervention th,
	#table-intervention td {
		display: table-cell;
		width: auto;
	}
	#table-intervention tr { background-color: transparent; }
	#table-intervention td { background-color: rgba(255,255,255,.4); }
}

/*********************************************
** 5.0 Formulaires
*********************************************/

/* ** 5.1 common ** */

form.row,
.row.formlike { 
	padding: 0;
	justify-content: space-between;
}
form.row .wp50,
.row.formlike .wp50 { max-width: 640px; }
form.row .wp100.maxw50,
.row.formlike .wp100.maxw50 {
	max-width: 640px;
	margin-right: calc(100% - 640px);
}

@media (max-width: 1080px) { 
	form.row .wp50,
	.row.formlike .wp50 { width: 100%; }
	form.row .wp100,
	.row.formlike.wp100 { max-width: 640px; }
	form.row .wp100.maxw50,
	.row.formlike .wp100.maxw50 { margin-right: auto; }
}


/* ** 5.2 Labels / container ** */
label {
	display: block;
	font-size: 14px;
}

.form-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
.form-row.align-top {
	align-items: flex-start;
}
.form-row label,
.form-row .form-label {
	width: 33%;
	min-width: 180px;
	flex: 0 0 auto;
	font-size: 14px;
	padding: 0 10px 0 0;
}
.form-row label em,
.form-row .form-label em {
	font-size: 12px;
	margin-top: 5px;
	line-height: 1.2em;
	display: block;
	font-style: normal;
	color: #494949;
}
.form-row input,
.form-row select,
.form-row textarea {
	flex: 1 1 auto;
}

#relicat {
	flex-flow: row wrap;	
}

.form-legend { 
	width: 100%;
	padding: 10px 0;
}
.wp50 > .form-legend:first-child,
.wp100 > .form-legend:first-child { margin-top: 0; padding-top: 0; }

@media (max-width: 480px) { 
	.form-row { 
		flex-wrap: wrap;
		margin-bottom: 15px;
	}
	.form-row label,
	.form-row .form-label { 
		width: 100%;
		flex: 1 1 auto;
		margin: 0 0 10px;
	}
}

.form-row.readonly {
	background-color: rgba(255,255,255,.4);
	border-radius: 10px;
	padding: 2px 10px;
}
.form-row.readonly label,
.form-row.readonly .form-label {
	padding: 10px;
	line-height: 16px;
	font-weight: 700;
}
.form-row.readonly .form-value {
	flex: 1 1 auto;
	font-size: 14px;
	line-height: 16px;
	padding: 10px;
}

@media (min-width: 1280px) { 
	.form-row.readonly { padding: 7px 10px; }
}
@media (max-width: 480px) { 
	.form-row.readonly label, 
	.form-row.readonly .form-label { margin-bottom: 0; }
}

/* ** 5.x Inputs ** */

select,
textarea,
input[type='tel'],
input[type='text'],
input[type='email'],
input[type='search'],
input[type='password'] {
	border-radius: 10px;
	border-color: transparent;
}
select:hover,
textarea:hover,
input[type='tel']:hover,
input[type='text']:hover,
input[type='email']:hover,
input[type='search']:hover,
input[type='password']:hover {
	border-color: #2e3998;
}
select:focus,
textarea:focus,
input[type='tel']:focus,
input[type='text']:focus,
input[type='email']:focus,
input[type='search']:focus,
input[type='password']:focus {
	border-color: #2e3998;
	box-shadow: #5762bc 0 0 5px;
}
textarea {
	height: auto;
	padding-top: 10px;
	padding-bottom: 10px;
	min-height: 140px;
}

@media (min-width: 1280px) { 
	select,
	textarea,
	input[type='tel'],
	input[type='text'],
	input[type='email'],
	input[type='search'],
	input[type='password'] {
		height: 50px;
		font-size: 15px;
	}
}

/* -- checkbox -- */
input[type="checkbox"] {
	appearance: none;
	display: block;
	width: 16px;
	height: 16px;
	background-color: #fff;
	border: #676767 1px solid;
	transition: border-color .3s;
}
input[type="checkbox"]:hover,
input[type="checkbox"]:focus { border-color: #2e3998; }
input[type="checkbox"]:checked {
	border-color: #2e3998;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 10' fill='%232e3998'%3E%3Cpath d='M.15,5.5c-.1-.1-.15-.25-.15-.35s.05-.25,.15-.35l.7-.7c.2-.2,.5-.2,.7,0l.05,.05,2.75,2.95c.1,.1,.25,.1,.35,0L11.4,.15h.05c.2-.2,.5-.2,.7,0l.7,.7c.2,.2,.2,.5,0,.7L4.85,9.85c-.1,.1-.2,.15-.35,.15s-.25-.05-.35-.15L.25,5.65l-.1-.15Zm0,0'/%3E%3C/svg%3E");
	background-size: 13px 10px;
}
input[type="checkbox"].ia {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
.check-label {
	display: flex;
	flex: 1 1 auto;
	-ms-align-items: center;
	align-items: center;
	padding: 10px 0;
}
.form-row .check-label {
	flex: 1 1 auto;
	padding: 10px 0;
}
.check-label input {
	flex: 0 0 auto;
}
.check-label .label-legend {
    font-size: 14px;
    padding: 0 10px;
	flex: 1 1 auto;
}

.ia-time-wrapper {
	
}
.ia-time-wrapper .duration-inputs::after,
.ia-time-wrapper .duration-inputs_hours::after,
.ia-time-wrapper .duration-inputs_minutes::after {
	content: "";
	flex: 1 1 auto;
	display: block;
	height: 50px;
	border-radius: 10px;
	background: #c9d4ed;
	opacity: .5;
}
.ia-time-wrapper .duration-inputs_hours,
.ia-time-wrapper .duration-inputs_minutes {
	width: 33.33%;
	max-width: 120px;
}
.ia-time-wrapper .duration-inputs::after {
	flex: 1 1 auto;
	margin-left: 10px;
}
.ia-time-wrapper .duration-inputs_hours label,
.ia-time-wrapper .duration-inputs_hours select,
.ia-time-wrapper .duration-inputs_minutes label,
.ia-time-wrapper .duration-inputs_minutes select { display: none; }

.ia-time-wrapper.display-ia-time .duration-inputs_hours label,
.ia-time-wrapper.display-ia-time .duration-inputs_hours select,
.ia-time-wrapper.display-ia-time .duration-inputs_minutes label,
.ia-time-wrapper.display-ia-time .duration-inputs_minutes select { display: block; }
.ia-time-wrapper.display-ia-time .duration-inputs_hours::after,
.ia-time-wrapper.display-ia-time .duration-inputs_minutes::after { display: none; }

/* -- dates -- */
.formatdate {
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 17 18'%3E%3Cpath d='M4.2,3.76c.27,0,.5-.25,.5-.57V.57c0-.31-.22-.57-.5-.57s-.5,.25-.5,.57V3.19c0,.31,.22,.57,.5,.57Z'/%3E%3Crect x='5.15' y='1.27' width='6.7' height='1.14'/%3E%3Cpath d='M15.05,18c1.08,0,1.95-1,1.95-2.24V3.51c0-1.23-.88-2.24-1.95-2.24h-1.29v1.14h1.29c.53,0,.96,.5,.96,1.1v1.94H.99v-1.94c0-.61,.43-1.1,.96-1.1h1.29V1.27H1.95C.88,1.27,0,2.28,0,3.51V15.76c0,1.23,.88,2.24,1.95,2.24H15.05ZM.99,15.76V6.59h15.02V15.76c0,.61-.43,1.1-.96,1.1H1.95c-.53,0-.96-.5-.96-1.1Z'/%3E%3Cpath d='M12.8,3.76c.27,0,.5-.25,.5-.57V.57c0-.31-.22-.57-.5-.57s-.5,.25-.5,.57V3.19c0,.31,.22,.57,.5,.57Z'/%3E%3Crect x='7.2' y='8.07' width='2.6' height='2.72'/%3E%3Crect x='7.2' y='12.64' width='2.6' height='2.72'/%3E%3Crect x='11.61' y='8.07' width='2.6' height='2.72'/%3E%3Crect x='11.61' y='12.64' width='2.6' height='2.72'/%3E%3Crect x='2.79' y='8.07' width='2.6' height='2.72'/%3E%3Crect x='2.79' y='12.64' width='2.6' height='2.72'/%3E%3C/svg%3E");
	background-size: 15px 16px;
}
.ui-widget-content.ui-datepicker {
  background: #fff;
  text-transform: uppercase;
  font-size: 11px;
  color: #707070;
  text-align: center;
  max-width: 250px;
  border: #d8d6d6 1px solid;
  width: 100%;
  display: none;
}
.ui-widget-content.ui-datepicker-multi {
  min-width: 100%;
}
.ui-widget-header {
  background: #fff;
  text-transform: uppercase;
  font-family: 'Lato', sans-serif;
  font-size: 14px;
  font-weight: 300;
  height: 40px;
  line-height: 40px;
  color: #969696;
}
.ui-widget-header > span {
  display: inline-block;
  vertical-align: middle;
  line-height: normal;
}
.ui-datepicker-prev,
.ui-datepicker-next {
	display: inline-block;
	width: 20px;
	height: 20px;
	line-height: 20px;
	margin: 8px 10px 0;
	cursor: pointer;
	font-size: 0;
}
.ui-datepicker-prev:before {
	display: inline-block;
	vertical-align: middle;
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 10'%3E%3Cpolygon points='0 5 5.05 10 6 9.06 1.91 5 6 .95 5.05 0 0 5'/%3E%3C/svg%3E");
	width: 6px;
	height: 10px;
}
.ui-datepicker-next:after {
	display: inline-block;
	vertical-align: middle;
 	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 10'%3E%3Cpolygon points='6 5 .95 0 0 .94 4.09 5 0 9.05 .95 10 6 5'/%3E%3C/svg%3E");
	width: 6px;
	height: 10px;
}
.ui-datepicker-prev:hover:before { content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23434da5' viewBox='0 0 6 10'%3E%3Cpolygon points='0 5 5.05 10 6 9.06 1.91 5 6 .95 5.05 0 0 5'/%3E%3C/svg%3E"); }
.ui-datepicker-next:hover:after  { content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23434da5' viewBox='0 0 6 10'%3E%3Cpolygon points='6 5 .95 0 0 .94 4.09 5 0 9.05 .95 10 6 5'/%3E%3C/svg%3E"); }
.ui-datepicker-prev {
  float: left;
}
.ui-datepicker-next {
  float: right;
  background-position: right 0;
}
.ui-datepicker-prev:hover {
  background-position: 0 bottom;
}
.ui-datepicker-next:hover {
  background-position: right bottom;
}
.ui-datepicker-calendar {
  width: 100%;
  margin: 0;
}
.ui-datepicker th {
  text-align: center;
  text-transform: none;
  background: #f1f1f1;
  font-weight: 700;
  padding: 5px 0;
  width: 14.28%;
  color: #4c4c4c;
}
.ui-datepicker tr td {
  border: #fff 1px solid;
	text-align: center;
	border-radius: 0;
  padding: 5px 0;
  width: 14.28%;
}
.ui-datepicker table tr td:first-child, 
.ui-datepicker table tr th:first-child,
.ui-datepicker table tr td:last-child, 
.ui-datepicker table tr th:last-child { 
	text-align: center;
	padding-left: 0;
	padding-right: 0; 
	border-radius: 0 
}
.ui-datepicker tr td,
.ui-datepicker tr:hover td {
  background: #fff;
}
.ui-datepicker tr td:hover {
  color: #abbadd;
}
.ui-datepicker td:active,
.ui-datepicker tr .dp-highlight {
  background: #abbadd;
  color: #fff;
}
.ui-datepicker tr td.reserved {
  background: #e3e3e3;
}
.ui-datepicker tr td.ui-datepicker-today {
  border: #abbadd 1px solid;
  color: #abbadd;
}
.ui-datepicker tr td.ui-datepicker-current-day {
  background: #abbadd;
  color: #fff;
}
.ui-datepicker-group.ui-datepicker-group-first,
.ui-datepicker-group.ui-datepicker-group-last {
  width: 50%;
  float: left;
}
.ui-datepicker-row-break {
  clear: both;
}

@media (max-width: 860px) { 
	.ui-datepicker-calendar thead,
	.ui-datepicker-calendar tbody { top: 0 }
	.ui-datepicker-calendar tbody tr::after { display: none; }
}
@media (max-width: 640px) { 
	.ui-datepicker-calendar {
		display: table;
	}
	.ui-datepicker-calendar thead {
		display: table-header-group;
		visibility: visible;
	}
	.ui-datepicker-calendar tbody  { 
		display: table-row-group;
	}
	.ui-datepicker-calendar thead th { font-size: 12px; }
	.ui-datepicker-calendar tr { display: table-row }
	.ui-datepicker-calendar th,
	.ui-datepicker-calendar td {
		display: table-cell;
		width: auto;
	}
}
/* hack placeholder */
::-webkit-input-placeholder { color:#ccc; }
:-webkit-input-placeholder { color:#ccc; }
::-moz-placeholder { color:#ccc; opacity:1; }
:-ms-input-placeholder { color:#ccc; }
input[placeholder] { color:#ccc; }

/* -- afficher mdp -- */
.unmaskable-pass { position: relative; }
.unmaskable-pass_button {
	position: absolute;
	display: block;
	opacity: 1;
	top: 50%; right: 17px;
	width: 24px; height: 24px;
	background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd' fill='%232e3998'%3E%3Cpath d='M12.01 20c-5.065 0-9.586-4.211-12.01-8.424 2.418-4.103 6.943-7.576 12.01-7.576 5.135 0 9.635 3.453 11.999 7.564-2.241 4.43-6.726 8.436-11.999 8.436zm-10.842-8.416c.843 1.331 5.018 7.416 10.842 7.416 6.305 0 10.112-6.103 10.851-7.405-.772-1.198-4.606-6.595-10.851-6.595-6.116 0-10.025 5.355-10.842 6.584zm10.832-4.584c2.76 0 5 2.24 5 5s-2.24 5-5 5-5-2.24-5-5 2.24-5 5-5zm0 1c2.208 0 4 1.792 4 4s-1.792 4-4 4-4-1.792-4-4 1.792-4 4-4z'/%3E%3C/svg%3E");
	margin-top: -12px;
	cursor: pointer;
}
.unmaskable-pass_button:hover { background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' clip-rule='evenodd' fill='%23000000'%3E%3Cpath d='M12.01 20c-5.065 0-9.586-4.211-12.01-8.424 2.418-4.103 6.943-7.576 12.01-7.576 5.135 0 9.635 3.453 11.999 7.564-2.241 4.43-6.726 8.436-11.999 8.436zm-10.842-8.416c.843 1.331 5.018 7.416 10.842 7.416 6.305 0 10.112-6.103 10.851-7.405-.772-1.198-4.606-6.595-10.851-6.595-6.116 0-10.025 5.355-10.842 6.584zm10.832-4.584c2.76 0 5 2.24 5 5s-2.24 5-5 5-5-2.24-5-5 2.24-5 5-5zm0 1c2.208 0 4 1.792 4 4s-1.792 4-4 4-4-1.792-4-4 1.792-4 4-4z'/%3E%3C/svg%3E"); }
.unmaskable-pass.unmasked .unmaskable-pass_button { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='%232e3998'%3E%3Cpath d='M15 12c0 1.654-1.346 3-3 3s-3-1.346-3-3 1.346-3 3-3 3 1.346 3 3zm9-.449s-4.252 8.449-11.985 8.449c-7.18 0-12.015-8.449-12.015-8.449s4.446-7.551 12.015-7.551c7.694 0 11.985 7.551 11.985 7.551zm-7 .449c0-2.757-2.243-5-5-5s-5 2.243-5 5 2.243 5 5 5 5-2.243 5-5z'/%3E%3C/svg%3E"); }
.unmaskable-pass.unmasked .unmaskable-pass_button:hover  { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='%23000000'%3E%3Cpath d='M15 12c0 1.654-1.346 3-3 3s-3-1.346-3-3 1.346-3 3-3 3 1.346 3 3zm9-.449s-4.252 8.449-11.985 8.449c-7.18 0-12.015-8.449-12.015-8.449s4.446-7.551 12.015-7.551c7.694 0 11.985 7.551 11.985 7.551zm-7 .449c0-2.757-2.243-5-5-5s-5 2.243-5 5 2.243 5 5 5 5-2.243 5-5z'/%3E%3C/svg%3E"); }

/* -- selects -- */
select {
	appearance: none;
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpolygon points='5 6 10 .95 9.06 0 5 4.09 .95 0 0 .95 5 6'/%3E%3C/svg%3E");
	background-size: 10px 6px;
	padding-right: 30px;
}
select option[value=""] { background-color: #f00 }
select:focus { background-color: #d3dbed }
select:focus option { background-color: #fff; }

.selectable-checkbox {
	position: relative;
    font-size: 14px;
    height: 40px;
}
.form-row .selectable-checkbox {
	flex: 1 1 auto;
	width: 67%;
	max-width: calc(100% - 160px);
}
.selectable-checkbox_result {
	width: 100%;
	height: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	line-height: 20px;
	border-radius: 10px;
	padding: 10px 30px 10px 20px;
	border: transparent 1px solid;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: right 10px center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpolygon points='5 6 10 .95 9.06 0 5 4.09 .95 0 0 .95 5 6'/%3E%3C/svg%3E");
	background-size: 10px 6px;
	-webkit-transition: border-color .3s, background-color .3s, color .3s, -webkit-box-shadow .3s;
    transition: border-color .3s, background-color .3s, color .3s, -webkit-box-shadow .3s;
    -o-transition: border-color .3s, background-color .3s, box-shadow .3s, color .3s;
    transition: border-color .3s, background-color .3s, box-shadow .3s, color .3s;
    transition: border-color .3s, background-color .3s, box-shadow .3s, color .3s, -webkit-box-shadow .3s;
}
.selectable-checkbox_list {
	display: none;
	background-color: #fff;
	position: absolute;
	padding: 20px;
	width: 100%; 
	left: 0;
	top: 30px;
	border: #2e3998 1px solid;
	border-top: none;
	border-radius: 0 0 10px 10px;
}
.selectable-checkbox_list::before {
	content: "";
	position: absolute;
	left: 0; top: 0;
	opacity: 0;
	width: 100%; height: 10px;
	background-color: #d3dbed;
	border-radius: 0 0 8px 8px;
	transition: opacity .3s;
}
.selectable-checkbox_list li {
	display: flex;
	height: auto;
	line-height: normal;
	-ms-align-items: center;
	align-items: center;
}
.selectable-checkbox_list li input[type="checkbox"] {
	flex: 0 0 auto;
	margin-right: 10px;
}
.selectable-checkbox .selectable-checkbox_result:hover { border-color: #2e3998 }
.selectable-checkbox.selectable-checkbox-opened { z-index: 1; }
.selectable-checkbox.selectable-checkbox-opened .selectable-checkbox_result {
	background-color: #fff;
	border: #2e3998 1px solid;
	background-color: #d3dbed;
	border-bottom: none;
	border-radius: 10px 10px 0 0;
}
.selectable-checkbox.selectable-checkbox-opened .selectable-checkbox_list {
	display: block;
}
.selectable-checkbox.selectable-checkbox-opened .selectable-checkbox_list::before  { opacity: 1 }

@media (min-width: 1280px) {
	.selectable-checkbox {
		height: 50px;
		font-size: 15px;
	}
	.selectable-checkbox_result { line-height: 30px; }
	.selectable-checkbox_list { top: 40px }
	.selectable-checkbox_list li { padding: 4px 0; }
}
@media (max-width: 480px) { 
	.form-row .selectable-checkbox {
		flex: 1 1 auto;
		width: 100%;
		max-width: 100%;
	}
}

/* -- */

.select-double {
	display: flex;
}
.form-row .select-double {
	flex: 1 1 auto;
}
.select-double select {
	flex: 50%;
	margin: 0 5px;
}
.select-double select:first-child { margin-left: 0; }
.select-double select:last-child { margin-right: 0; }

/* -- */

.duration-inputs {
	display: flex;
}
.form-row .duration-inputs {
	flex: 1 1 auto;
}
.duration-inputs > div {
	flex: 33%;
	position: relative;
	padding-left: 10px;
}
.duration-inputs select {
	padding: 0 60% 0 0;
	text-align: center;
}
.groupe_choix_temps {
	padding-left: 10px;	
}
.duration-inputs > div:first-child { padding-left: 0 }
.duration-inputs > div label {
	position: absolute;
	text-align: center;
	top: 0; height: 100%;
	line-height: 40px;
	left: 40%;
	min-width: 30%;
	pointer-events: none;
}
.duration-inputs_select {
	padding-right: 60%;
}

@media (min-width: 1280px) {
	.duration-inputs > div label { line-height: 50px; }
}
@media (max-width: 480px) { 
	.duration-inputs select { padding-right: 66%; }
	.duration-inputs > div label { width: 33%; min-width: 40px; }
}

/* --- */
.deletable-input { position: relative; }
.bt-delete-input {
	position: absolute;
	right: 10px; top: 50%;
	margin-top: -16px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	border: #c4c4c4 1px solid;
	background: center no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50'%3E%3Cpath d='M32,37H18a2,2,0,0,1-2-2V18H15V16h6V14.5A1.5,1.5,0,0,1,22.5,13h5A1.5,1.5,0,0,1,29,14.5V16h6v2H34V35A2,2,0,0,1,32,37Zm0-19H18V34.5a.5.5,0,0,0,.5.5h13a.5.5,0,0,0,.5-.5Zm-9,4a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm6,0a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm-2-7H23v1h4Z'%3E%3C/path%3E%3C/svg%3E");
	background-size: 100% 100%;
	transition: background-color .3s, border-color .3s;
}
.bt-delete-input:hover {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 50' fill='%23fff'%3E%3Cpath d='M32,37H18a2,2,0,0,1-2-2V18H15V16h6V14.5A1.5,1.5,0,0,1,22.5,13h5A1.5,1.5,0,0,1,29,14.5V16h6v2H34V35A2,2,0,0,1,32,37Zm0-19H18V34.5a.5.5,0,0,0,.5.5h13a.5.5,0,0,0,.5-.5Zm-9,4a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm6,0a1,1,0,0,0-2,0v9a1,1,0,0,0,2,0Zm-2-7H23v1h4Z'%3E%3C/path%3E%3C/svg%3E");
	background-color: #bd0900;
	border-color: #bd0900
}

/* -- submits / button -- */
#submit,
#cancel,
input[type="submit"],
input[type="button"] {
	height: 50px;
	padding: 0 30px;
	min-width: 140px;
	text-align: center;
	border-radius: 10px;
	border: #2e3998 1px solid;
	font-weight: 700;
	transition: border-color .3s, background-color .3s, color .3s;
}

#submit,
input[type="submit"] {
	background-color: #2e3998;
	color: #fff;
}
#cancel,
input[type="button"] {
	background-color: transparent;
	color: #2e3998;
}
#submit:hover,
#cancel:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
	background-color: #000;
	border-color: #000;
	color: #fff;
}

input.button-add {
	padding-left: 60px;
	padding-right: 60px;
	background-position: 20px center;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='%232e3998'%3E%3Cpath d='M17.08,8.08h-7.17V.92c0-.51-.41-.92-.92-.92s-.92,.41-.92,.92v7.17H.92c-.51,0-.92,.41-.92,.92s.41,.92,.92,.92h7.17v7.17c0,.51,.41,.92,.92,.92s.92-.41,.92-.92v-7.17h7.17c.51,0,.92-.41,.92-.92s-.41-.92-.92-.92Z'/%3E%3C/svg%3E");
	-webkit-background-size: 18px 18px;
	background-size: 18px 18px;
}
input.button-add:hover { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18' fill='%23fff'%3E%3Cpath d='M17.08,8.08h-7.17V.92c0-.51-.41-.92-.92-.92s-.92,.41-.92,.92v7.17H.92c-.51,0-.92,.41-.92,.92s.41,.92,.92,.92h7.17v7.17c0,.51,.41,.92,.92,.92s.92-.41,.92-.92v-7.17h7.17c.51,0,.92-.41,.92-.92s-.41-.92-.92-.92Z'/%3E%3C/svg%3E"); }

.form-action {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	flex-wrap: wrap;
	flex-direction: row-reverse;
	justify-content: space-between;
	width: 100%;
}
.form-action_group {
	display: flex;
	-ms-align-items: center;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-start;
	flex: 0 0 auto;
}
.form-action_group input + input { margin-left: 10px; }

#submit-fin {
	padding-right: 50px;
	padding-left: 20px;
	background-position: right 15px center;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M21.856 10.303c.086.554.144 1.118.144 1.697 0 6.075-4.925 11-11 11s-11-4.925-11-11 4.925-11 11-11c2.347 0 4.518.741 6.304 1.993l-1.422 1.457c-1.408-.913-3.082-1.45-4.882-1.45-4.962 0-9 4.038-9 9s4.038 9 9 9c4.894 0 8.879-3.928 8.99-8.795l1.866-1.902zm-.952-8.136l-9.404 9.639-3.843-3.614-3.095 3.098 6.938 6.71 12.5-12.737-3.096-3.096z'/%3E%3C/svg%3E");
}
#submit-save {
	background-color: transparent;
	padding-left: 50px;
	padding-right: 20px;
	background-position: 15px center;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%232e3998' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M14 3h2.997v5h-2.997v-5zm9 1v20h-22v-24h17.997l4.003 4zm-17 5h12v-7h-12v7zm14 4h-16v9h16v-9z'/%3E%3C/svg%3E");
	color: #2e3998;
}
#submit-save:hover {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M14 3h2.997v5h-2.997v-5zm9 1v20h-22v-24h17.997l4.003 4zm-17 5h12v-7h-12v7zm14 4h-16v9h16v-9z'/%3E%3C/svg%3E");
	background-color: #000;
	color: #fff;
}

@media (max-width: 1280px) { 
	#submit,
	#cancel,
	input[type="submit"],
	input[type="button"] {
		height: 40px;
		padding: 0 20px;
		min-width: 140px;
		text-align: center;
		border-radius: 10px;
		border: #2e3998 1px solid;
		font-weight: 700;
		transition: border-color .3s, background-color .3s, color .3s;
	}
	input.button-add {
		padding-left: 20px;	
		background-position: 10px center;
		background-size: 14px 14px;
	}
}
@media (max-width: 640px) { 
	.form-action {
		flex-direction: column-reverse;
	}
	.form-action input { margin: 10px 0; }
}


/* ** 5.x Recherches ** */

/* -- barre de recherche simple -- */
.searchbar {
	display: flex;
	-ms-align-items: center;
	align-items: center;
}
.searchbar .searchbar-text { 
	flex: 1 1 auto; 
	height: 50px;
	margin: 0 10px 0 0;
}
.searchbar .searchbar-submit { 
	border-radius: 10px;
	background: #2e3998 center no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 21 21' fill='%23ffffff'%3E%3Cpath d='M20.64,18.91l-6.19-6.19a8,8,0,1,0-1.73,1.73l6.19,6.19a1.24,1.24,0,0,0,.87.36,1.23,1.23,0,0,0,.86-2.09Zm-16.57-7a5.55,5.55,0,1,1,7.85-7.85,5.55,5.55,0,0,1-7.85,7.85Z'/%3E%3C/svg%3E");
	background-size: 21px 21px;
	padding: 0; 
	width: 50px;
	height: 50px;
	min-width: 50px;
	border: none;
	flex: 0 0 auto;
	transition: background-color .3s;
}
.searchbar .searchbar-submit:hover,
.searchbar .searchbar-submit:active {
	background-color: #000;
}
@media (min-width: 1440px) { 
	.searchbar .searchbar-text { margin-right: 20px; }
}

/* ** 5.x Buttons ** */


/*********************************************
** 6.0 Fancybox
*********************************************/

/* ** 6.1 Confirm box ** */
.confirmbox-container .fancybox-bg {
	background-color: rgba(46,57,152,.8);
}
.confirmbox {
	border-radius: 20px;
	text-align: center;
	min-width: 240px;
	padding: 20px;
}
.confirmbox h3 {
	font-size: 16px;
	margin: 0;
	padding: 10px;
	text-transform: uppercase;
}
.confirmbox p {
	padding: 10px;
	margin: 0;
}
.confirmbox-buttons {
	display: flex;
	min-width: 220px;
	padding: 10px;
	align-items: center;
	justify-content: center;
	margin: 1em auto 0;
}
.confirmbox-buttons a {
	margin-right: 15px;
	font-weight: 700;
	font-size: 14px;
	cursor: pointer;
	color: #2e3998;
	transition: color .3s;
}
.confirmbox-buttons a:hover { color: #000 }
.confirmbox-buttons button {
	cursor: pointer;
	margin-left: 15px;
	border-radius: 10px;
	background-color: #2e3998;
	border: #2e3998 1px solid;
	padding: 10px 20px;
	font-weight: 700;
	font-size: 14px;
	color: #fff;
	transition: background-color .3s, border-color .3s;
}
.confirmbox-buttons button:hover {
	background-color: #000;
	border-color: #000;
}

/* ** 6.2 Fancybox preview temps ** */
.viewport-fancy { 
	padding: 20px;
}
.fancy-container {
	padding: 30px;
	background-color: #dfe7f9;
}
.fancy-container .heading-title {
	padding: 0;
	text-align: center;
	margin-bottom: 2rem;
}
.time-preview-selector {
	margin: 2rem 0;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
#filter-preview {
	width: 40%;
	margin-left: 15px;
	max-width: 320px;
	color: #2e3998;
	border-color: #2e3998;
	background-color: transparent;
	height: 32px;
}
.time-preview {
	position: relative;
	margin-top: 40px;
	width: 100%;
	height: 70px;
	background-color: #cfd3f2;
	border: #bac0f2 1px solid;
}
.project-total {
	position: absolute;
	top: 0;
	z-index: 1;
	width: 80px;
	margin-top: -30px;
	margin-left: -40px;
	text-transform: uppercase;
	text-align: center;
	line-height: 20px;
	font-weight: 700;
	font-size: 12px;
	color: #000;
}
.project-total::after {
	content: "";
	display: block;
	margin: 5px auto;
	background-color: #000;
	height: 80px;
	width: 3px;
}
.project-time {
	position: absolute;
	top: 0; 
	left: 0;
	width: 50%;
	height: 100%;
	background-color:#5bc336;
}
.project-bonus {
	position: absolute;
	top: 0; 
	left: 50%;
	width: 10%;
	height: 100%;
	background-color:#d6cc5a;
}
.project-time,
.project-bonus {
	padding: 0 10px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	color: #000;
	font-size: 12px;
	font-weight: 700;
}
.project-time .legend,
.project-bonus .legend {
	position: absolute;
	left: 0; top: 75px;
	font-size: 13px;
	font-weight: 400;
	width: 140px;
}
.project-time em,
.project-bonus em {
	opacity: .75;
	font-weight: 300;
	font-style: normal;
}

.outdated-time .project-time {
	background-color: #9C0002;
	color: #fff;
}
.outdated-time .project-bonus {
	background-color: #D56707;
	color: #fff;
}
.outdated-time .project-time .legend,
.outdated-time .project-bonus .legend {
	color: #000;
}
@media (min-width: 740px) { 
	.fancy-container {
		padding: 40px;
	}
}

/*********************************************
** 7.0 Login
*********************************************/

#content-login {
	height: 100vh;
	width: 100%;
	display: flex;
	-ms-align-items: center;
	align-items: center;
	justify-content: center;
	background-color: #2e3998;
	padding: 30px;
}
#form-login {
	border-radius: 20px;
	background-color: #fff;
	width: 80%;
	max-width: 480px;
	padding: 55px;
}
.login-logo {
	width: 120px;
	margin: 0 auto 30px;
}
.login-logo svg {
	display: block;
	width: 100%;
}
.login-fields {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.login-fields label:first-child { width: 100%; }
.login-fields label.unmaskable-pass {
	width: calc(100% - 70px);
}
#submit-login {
	background: #2e3998 center no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='%23fff' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m13.022 14.999v3.251c0 .412.335.75.752.75.188 0 .375-.071.518-.206 1.775-1.685 4.945-4.692 6.396-6.069.2-.189.312-.452.312-.725 0-.274-.112-.536-.312-.725-1.451-1.377-4.621-4.385-6.396-6.068-.143-.136-.33-.207-.518-.207-.417 0-.752.337-.752.75v3.251h-9.02c-.531 0-1.002.47-1.002 1v3.998c0 .53.471 1 1.002 1z' fill-rule='nonzero'/%3E%3C/svg%3E");
	background-size: 24px 24px;
	border-radius: 10px;
	min-width: 60px;
	border: none;
	width: 60px;
	height: 40px;
	margin: 5px;
	transition: background-position .3s, background-color .3s;
}
#submit-login:hover,
#submit-login:focus {
	background-color: #000;
	background-position: 55% center;
}

@media (min-width: 1280px) { 
	#submit-login { height: 50px; }
}
@media (max-width: 580px) { 
	.login-logo {
		width: 90px;
		margin: 0 auto 15px;
	}
	#form-login {
		width: 100%;
		max-width: 380px;
		padding: 25px;
	}
}
