/* Here, the content of the common custom CSS defined into Home - Setup - Display - CSS*/
a.commonlink.completelist { font-weight: bold !important; vertical-align: top; }

/* ============================================================================== */
/* Default styles */
/* ============================================================================== */


body {
	background: rgb(255,255,255);
	color: rgb(0,0,0);
	font-size: 13px;
	line-height: 1.4;
	font-family: roboto,arial,tahoma,verdana,helvetica;
 margin-top: 0;
 margin-bottom: 0;
 margin-right: 0;
 margin-left: 0;
 direction: ltr;
}

.thumbstat, a.tab { color: rgb(0,0,0) !important; font-weight: bold !important; }
th a { font-weight: bold !important; }
a.tab { font-weight: bold !important; }

a:link, a:visited, a:hover, a:active { font-family: roboto,arial,tahoma,verdana,helvetica; font-weight: normal; color: rgb(0,0,100); text-decoration: none; }
a:hover { text-decoration: underline; color: rgb(0,0,100); }
a.commonlink { color: rgb(0,0,100) !important; text-decoration: none; }
a.commonlink.completelist { font-weight: bold !important; vertical-align: top; }
th.liste_titre a div div:hover, th.liste_titre_sel a div div:hover { text-decoration: underline; }
input, input.flat, textarea, textarea.flat, form.flat select, select, select.flat, .dataTables_length label select {
	background-color: #FFF;
}
select.vmenusearchselectcombo {
	background-color: unset;
}

input.select2-input {
	border-bottom: none ! important;
}
.select2-choice {
	border: none;
	border-bottom: solid 1px rgba(0,0,0,.2) !important;	/* required to avoid to lose bottom line when focus is lost on select2. */
}

.liste_titre input[name=month_date_when], .liste_titre input[name=monthvalid], .liste_titre input[name=search_ordermonth], .liste_titre input[name=search_deliverymonth],
.liste_titre input[name=search_smonth], .liste_titre input[name=search_month], .liste_titre input[name=search_emonth], .liste_titre input[name=smonth], .liste_titre input[name=month], .liste_titre select[name=month],
.liste_titre input[name=month_lim], .liste_titre input[name=month_start], .liste_titre input[name=month_end], .liste_titre input[name=month_create],
.liste_titre input[name=search_month_lim], .liste_titre input[name=search_month_start], .liste_titre input[name=search_month_end], .liste_titre input[name=search_month_create],
.liste_titre input[name=search_day_date_when], .liste_titre input[name=search_month_date_when], .liste_titre input[name=search_year_date_when],
.liste_titre input[name=search_month_create], .liste_titre input[name=search_month_start], .liste_titre input[name=search_month_end]
{
	margin-right: 4px;
}
input[type=submit] {
	margin-left: 5px;
}
input, input.flat, form.flat select, select, select.flat, .dataTables_length label select {
	border: none;
	background-color: #CCCCFF;
}
input, input.flat, textarea, textarea.flat, form.flat select, select, select.flat, .dataTables_length label select {
 font-family: roboto,arial,tahoma,verdana,helvetica;
 outline: none;
 margin: 0px 0px 0px 0px;
 border-bottom: solid 1px rgba(0,0,0,.2);
}

input {
 line-height: 17px;
	padding: 6px;
	padding-left: 5px;
}
select {
	padding: 4px;
	padding-left: 2px;
}
input, select {
	margin-left:0px;
	margin-bottom:1px;
	margin-top:1px;
}

/* Focus definitions must be after standard definition */
textarea:focus, button:focus {
 /* v6 box-shadow: 0 0 4px #8091BF; */
	border: 1px solid #aaa !important;
}
input:focus, select:focus {
	border-bottom: 1px solid #666;
}
textarea.cke_source:focus
{
	box-shadow: none;
}

select {
	/* padding: 4px 4px 2px 1px; */
}
textarea {
	border-radius: 0;
	border-top:solid 1px rgba(0,0,0,.2);
	border-left:solid 1px rgba(0,0,0,.2);
	border-right:solid 1px rgba(0,0,0,.2);
	border-bottom:solid 1px rgba(0,0,0,.2);

	padding:4px;
	margin-left:0px;
	margin-bottom:1px;
	margin-top:1px;
	}
input.removedassigned {
	padding: 2px !important;
	vertical-align: text-bottom;
	margin-bottom: -3px;
}
input.smallpadd {	/* Used for timesheet input */
	padding-left: 0px !important;
	padding-right: 0px !important;
}
input.buttongen {
	vertical-align: middle;
}
input.buttonpayment {
	min-width: 320px;
	margin-bottom: 15px;
	background-image: none;
	line-height: 24px;
	padding: 8px;
	background: none;
	padding-left: 30px;
	text-align: left;
	border: 1px solid #ddd;
	background-color: #eee;
	white-space: normal;
}
input.buttonpaymentcb {
	background-image: url(/htdocs/theme/common/credit_card.png);
	background-size: 26px;
	background-repeat: no-repeat;
	background-position: 2px 11px;
}
input.buttonpaymentcheque {
	background-image: url(/htdocs/theme/common/cheque.png);
	background-size: 24px;
	background-repeat: no-repeat;
	background-position: 2px 8px;
}
input.buttonpaymentpaypal {
	background-image: url(/htdocs/paypal/img/object_paypal.png);
	background-repeat: no-repeat;
	background-position: 8px 11px;
}
input.buttonpaymentpaybox {
	background-image: url(/htdocs/paybox/img/object_paybox.png);
	background-repeat: no-repeat;
	background-position: 8px 11px;
}
input.buttonpaymentstripe {
	background-image: url(/htdocs/stripe/img/object_stripe.png);
	background-repeat: no-repeat;
	background-position: 8px 11px;
}
/* Used by timesheets */
span.timesheetalreadyrecorded input {
 border: none;
 border-bottom: solid 1px rgba(0,0,0,0.4);
 margin-right: 1px !important;
}
td.onholidaymorning, td.onholidayafternoon {
	background-color: #fdf6f2;
}
td.onholidayallday {
	background-color: #f4eede;
}
td.actionbuttons a {
 padding-left: 6px;
}
select.flat, form.flat select {
	font-weight: normal;
	font-size: unset;
 height: 2em;
}
.optionblue {
	color: rgb(0,0,100);
}
.select2-results .select2-highlighted.optionblue {
	color: #FFF !important;
}
.optiongrey, .opacitymedium {
	opacity: 0.5;
}
.opacityhigh {
	opacity: 0.2;
}
.opacitytransp {
	opacity: 0;
}
select:invalid {
	color: gray;
}
input:disabled {
	background:#ddd;
}

input.liste_titre {
	box-shadow: none !important;
}
input.removedfile {
	padding: 0px !important;
	border: 0px !important;
	vertical-align: text-bottom;
}
textarea:disabled {
	background:#ddd;
}
input[type=file ] { background-color: transparent; border-top: none; border-left: none; border-right: none; box-shadow: none; }
input[type=checkbox] { background-color: transparent; border: none; box-shadow: none; }
input[type=radio] { background-color: transparent; border: none; box-shadow: none; }
input[type=image] { background-color: transparent; border: none; box-shadow: none; }
input:-webkit-autofill {
	background-color: #FDFFF0 !important;
	background-image:none !important;
	-webkit-box-shadow: 0 0 0 50px #FDFFF0 inset;
}
::-webkit-input-placeholder { color:#ccc; }
input:-moz-placeholder { color:#ccc; }
input[name=price], input[name=weight], input[name=volume], input[name=surface], input[name=sizeheight], select[name=incoterm_id] { margin-right: 6px; }
input[name=surface] { margin-right: 4px; }
fieldset { border: 1px solid #AAAAAA !important; }
.legendforfieldsetstep { padding-bottom: 10px; }
.trextrafieldseparator td {
 border-bottom: 2px solid rgb(120,120,120) !important;
}
input#onlinepaymenturl, input#directdownloadlink {
	opacity: 0.7;
}

hr { border: 0; border-top: 1px solid #ccc; }

.button, .buttonDelete, input[name="sbmtConnexion"] {
	margin-bottom: 0;
	margin-top: 0;
	margin-left: 5px;
	margin-right: 5px;
 font-family: roboto,arial,tahoma,verdana,helvetica;
	border-color: #c5c5c5;
	border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25);
	display: inline-block;
	padding: 3px 14px;
	text-align: center;
	cursor: pointer;
	text-decoration: none !important;
	background-color: #f5f5f5;
	background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
	background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
	background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
	background-repeat: repeat-x;
	border-color: #e6e6e6 #e6e6e6 #bfbfbf;
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	border: 1px solid #bbbbbb;
	border-bottom-color: #a2a2a2;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}
.button:focus, .buttonDelete:focus {
	-webkit-box-shadow: 0px 0px 5px 1px rgba(0, 0, 60, 0.2), 0px 0px 0px rgba(60,60,60,0.1);
	box-shadow: 0px 0px 5px 1px rgba(0, 0, 60, 0.2), 0px 0px 0px rgba(60,60,60,0.1);
}
.button:hover, .buttonDelete:hover {
	/* warning: having a larger shadow has side effect when button is completely on left of a table */
	-webkit-box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.2), 0px 0px 0px rgba(60,60,60,0.1);
	box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.2), 0px 0px 0px rgba(60,60,60,0.1);
}
.button:disabled, .buttonDelete:disabled {
	opacity: 0.4;
 box-shadow: none;
 -webkit-box-shadow: none;
 cursor: auto;
}
.buttonRefused {
	pointer-events: none;
 	cursor: default;
	opacity: 0.4;
 box-shadow: none;
 -webkit-box-shadow: none;
}
form {
 padding:0px;
 margin:0px;
}
form#addproduct {
 padding-top: 6px;
}
div.float
{
 float:left;
}
div.floatright
{
 float:right;
}
.inline-block
{
	display:inline-block;
}

th .button {
 -webkit-box-shadow: none !important;
 box-shadow: none !important;
	-webkit-border-radius:0px !important;
	border-radius:0px !important;
}
.maxwidthsearch {		/* Max width of column with the search picto */
	width: 54px;
}
.valigntop {
	vertical-align: top;
}
.valignmiddle {
	vertical-align: middle;
}
.valignbottom {
	vertical-align: bottom;
}
.valigntextbottom {
	vertical-align: text-bottom;
}
.centpercent {
	width: 100%;
}
.quatrevingtpercent, .inputsearch {
	width: 80%;
}
.soixantepercent {
	width: 60%;
}
textarea.centpercent {
	width: 96%;
}
.center {
 text-align: center;
 margin: 0px auto;
}
.left {
	text-align: left;
}
.right {
	text-align: right;
}
.justify {
	text-align: justify;
}
.nowrap {
	white-space: nowrap;
}
.liste_titre .nowrap {
	white-space: nowrap;
}
.nowraponall {
	white-space: nowrap;
}
.wordwrap {
	word-wrap: break-word;
}
.wordbreak {
	word-break: break-all;
}
.nobold {
	font-weight: normal !important;
}
.nounderline {
 text-decoration: none;
}
.paddingleft {
	padding-left: 4px;
}
.paddingleft2 {
	padding-left: 2px;
}
.paddingright {
	padding-right: 4px;
}
.paddingright2 {
	padding-right: 2px;
}
.cursorpointer {
	cursor: pointer;
}
.cursormove {
	cursor: move;
}
.cursornotallowed {
	cursor: not-allowed;
}
.badge {
	display: inline-block;
	min-width: 10px;
	padding: 2px 5px;
	font-size: 10px;
	font-weight: 700;
	line-height: 1em;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: text-bottom;
	background-color: #aaa;
	border-radius: 10px;
}
.borderrightlight
{
	border-right: 1px solid #DDD;
}
#formuserfile {
	margin-top: 4px;
}
#formuserfile_link {
	margin-left: 1px;
}
.listofinvoicetype {
	height: 28px;
	vertical-align: middle;
}
div.divsearchfield {
	float: left;
	margin-right: 12px;
 margin-left: 2px;
	margin-top: 4px;
 margin-bottom: 4px;
 	padding-left: 2px;
}
div.confirmmessage {
	padding-top: 6px;
}
ul.attendees {
	padding-top: 0;
	padding-bottom: 0;
	padding-left: 0;
	margin-top: 0;
	margin-bottom: 0;
}
ul.attendees li {
	list-style-type: none;
	padding-top:1px;
	padding-bottom:1px;
}
.googlerefreshcal {
	padding-top: 4px;
	padding-bottom: 4px;
}
.paddingtopbottom {
	padding-top: 10px;
	padding-bottom: 10px;
}
.checkallactions {
 margin-left: 2px;		/* left must be same than right to keep checkbox centered */
 margin-right: 2px;		/* left must be same than right to keep checkbox centered */
 vertical-align: middle;
}
select.flat.selectlimit {
 max-width: 62px;
}
.selectlimit, .marginrightonly {
	margin-right: 10px !important;
}
.marginleftonly {
	margin-left: 10px !important;
}
.selectlimit, .selectlimit:focus {
 border-left: none !important;
 border-top: none !important;
 border-right: none !important;
 outline: none;
}
.strikefordisabled {
	text-decoration: line-through;
}
.widthdate {
	width: 130px;
}
/* using a tdoverflowxxx make the min-width not working */
.tdoverflow {
 max-width: 0;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}
.tdoverflowmax50 {			/* For tdoverflow, the max-midth become a minimum ! */
 max-width: 50px;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}
.tdoverflowmax100 {			/* For tdoverflow, the max-midth become a minimum ! */
 max-width: 100px;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}
.tdoverflowmax150 {			/* For tdoverflow, the max-midth become a minimum ! */
 max-width: 150px;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}
.tdoverflowmax200 {			/* For tdoverflow, the max-midth become a minimum ! */
 max-width: 200px;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}
.tdoverflowmax300 {			/* For tdoverflow, the max-midth become a minimum ! */
 max-width: 300px;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}
.tdoverflowauto {
 max-width: 0;
 overflow: auto;
}
.tablelistofcalendars {
	margin-top: 25px !important;
}
.amountalreadypaid {
}
.amountpaymentcomplete {
	color: #008800;
	font-weight: bold;
}
.amountremaintopay {
	color: #880000;
	font-weight: bold;
}
.amountremaintopayback {
	font-weight: bold;
}
.savingdocmask {
	margin-top: 6px;
	margin-bottom: 12px;
}
#builddoc_form ~ .showlinkedobjectblock {
 margin-top: 20px;
}

/* For the long description of module */
.moduledesclong p img, .moduledesclong p a img {
 max-width: 90% !important;
 height: auto !important;
}
.imgdoc {
 margin: 18px;
 border: 1px solid #ccc;
 box-shadow: 1px 1px 25px #aaa;
 max-width: calc(100% - 56px);
}
.fa-file-text-o, .fa-file-code-o, .fa-file-powerpoint-o, .fa-file-excel-o, .fa-file-word-o, .fa-file-o, .fa-file-image-o, .fa-file-video-o, .fa-file-audio-o, .fa-file-archive-o, .fa-file-pdf-o {
	color: #055;
}

/* DOL_XXX for future usage (when left menu has been removed). If we do not use datatable */
/*.table-responsive {
 width: calc(100% - 330px);
 margin-bottom: 15px;
 overflow-y: hidden;
 -ms-overflow-style: -ms-autohiding-scrollbar;
}*/
/* Style used for most tables */
.div-table-responsive, .div-table-responsive-no-min {
 overflow-x: auto;
 min-height: 0.01%;
}
.div-table-responsive {
 line-height: 120%;
}
/* Style used for full page tables with field selector and no content after table (priority before previous for such tables) */
div.fiche>form>div.div-table-responsive, div.fiche>form>div.div-table-responsive-no-min {
 overflow-x: auto;
}
div.fiche>form>div.div-table-responsive {
 min-height: 392px;
}
div.fiche>div.tabBar>form>div.div-table-responsive {
 min-height: 392px;
}

.flexcontainer {
 display: inline-flex;
 flex-flow: row wrap;
 justify-content: flex-start;
}
.thumbstat {
	flex: 1 1 116px;
}
.thumbstat150 {
	flex: 1 1 170px;
}
.thumbstat, .thumbstat150 {
 /* flex-grow: 1; */
 /* flex-shrink: 1; */
 /* flex-basis: 140px; */
	display: inline;
 width: 100%;
 justify-content: flex-start;
 align-self: flex-start;
}

select.selectarrowonleft {
	direction: rtl;
}
select.selectarrowonleft option {
	direction: ltr;
}


/* ============================================================================== */
/* Styles to hide objects */
/* ============================================================================== */

.clearboth { clear:both; }
.hideobject { display: none; }
.minwidth50 { min-width: 50px; }
/* rule for not too small screen only */
@media only screen and (min-width: 184px)
{
 .width50 { width: 50px; }
 .width100 { width: 100px; }
 .width200 { width: 200px; }
 .minwidth100 { min-width: 100px; }
 .minwidth200 { min-width: 200px; }
 .minwidth300 { min-width: 300px; }
 .minwidth400 { min-width: 400px; }
 .minwidth500 { min-width: 500px; }
 .minwidth50imp { min-width: 50px !important; }
 .minwidth75imp { min-width: 75px !important; }
 .minwidth100imp { min-width: 100px !important; }
 .minwidth200imp { min-width: 200px !important; }
 .minwidth300imp { min-width: 300px !important; }
 .minwidth400imp { min-width: 400px !important; }
 .minwidth500imp { min-width: 500px !important; }
}
.widthauto { width: auto; }
.width25 { width: 25px; }
.width50 { width: 50px; }
.width75 { width: 75px; }
.width100 { width: 100px; }
.width200 { width: 200px; }
.maxwidth25 { max-width: 25px; }
.maxwidth50 { max-width: 50px; }
.maxwidth75 { max-width: 75px; }
.maxwidth100 { max-width: 100px; }
.maxwidth125 { max-width: 125px; }
.maxwidth150 { max-width: 150px; }
.maxwidth200 { max-width: 200px; }
.maxwidth300 { max-width: 300px; }
.maxwidth400 { max-width: 400px; }
.maxwidth500 { max-width: 500px; }
.maxwidth50imp { max-width: 50px !important; }
.maxwidth75imp { max-width: 75px !important; }
.minheight20 { min-height: 20px; }
.minheight40 { min-height: 40px; }
.titlefieldcreate { width: 20%; }
.titlefield { width: 25%; }
.titlefieldmiddle { width: 50%; }
.imgmaxwidth180 { max-width: 180px; }
.imgmaxheight50 { max-height: 50px; }

.width20p { width:20%; }
.width25p { width:25%; }
.width40p { width:40%; }
.width50p { width:50%; }
.width60p { width:60%; }
.width75p { width:75%; }
.width80p { width:80%; }
.width100p { width:100%; }


/* Force values for small screen 1400 */
@media only screen and (max-width: 1400px)
{
	.titlefield { width: 30% !important; }
	.titlefieldcreate { width: 30% !important; }
	.minwidth50imp { min-width: 50px !important; }
 .minwidth75imp { min-width: 75px !important; }
 .minwidth100imp { min-width: 100px !important; }
 .minwidth200imp { min-width: 200px !important; }
 .minwidth300imp { min-width: 300px !important; }
 .minwidth400imp { min-width: 300px !important; }
 .minwidth500imp { min-width: 300px !important; }
}

/* Force values for small screen 1000 */
@media only screen and (max-width: 1000px)
{
 .maxwidthonsmartphone { max-width: 100px; }
	.minwidth50imp { min-width: 50px !important; }
 .minwidth75imp { min-width: 70px !important; }
 .minwidth100imp { min-width: 80px !important; }
 .minwidth200imp { min-width: 100px !important; }
 .minwidth300imp { min-width: 100px !important; }
 .minwidth400imp { min-width: 150px !important; }
 .minwidth500imp { min-width: 250px !important; }
}

/* Force values for small screen 767 */
@media only screen and (max-width: 767px)
{
	body {
		font-size: 16px;
	}
	div.refidno {
		font-size: 16px !important;
	}
}

/* Force values for small screen 570 */
@media only screen and (max-width: 570px)
{
	body {
		font-size: 16px;
	}
	div.refidno {
		font-size: 16px !important;
	}

	.divmainbodylarge { margin-left: 20px !important; margin-right: 20px !important; }

 .tdoverflowonsmartphone {
 max-width: 0;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
 }
	div.fiche {
		 margin-top: 6px !important;
	}
	div.titre {
		/* margin-top: 12px; */
		/* line-height: 2em; */
	}
 .border tbody tr, .border tbody tr td, div.tabBar table.border tr, div.tabBar table.border tr td, div.tabBar div.border .table-border-row, div.tabBar div.border .table-key-border-col, div.tabBar div.border .table-val-border-col {
 	height: 40px !important;
 }

 .quatrevingtpercent, .inputsearch {
 	width: 95%;
 }

	input, input[type=text], input[type=password], select, textarea {
		min-width: 20px;
 	min-height: 1.4em;
 	line-height: 1.4em;
 	/* padding: .4em .1em; */
 	/* border-bottom: 1px solid #BBB; */
 	/* max-width: inherit; why this ? */
 }

 .hideonsmartphone { display: none; }
 .hideonsmartphoneimp { display: none !important; }
 .noenlargeonsmartphone { width : 50px !important; display: inline !important; }
 .maxwidthonsmartphone, #search_newcompany.ui-autocomplete-input { max-width: 100px; }
 .maxwidth50onsmartphone { max-width: 40px; }
 .maxwidth75onsmartphone { max-width: 50px; }
 .maxwidth100onsmartphone { max-width: 70px; }
 .maxwidth150onsmartphone { max-width: 120px; }
 .maxwidth200onsmartphone { max-width: 200px; }
 .maxwidth300onsmartphone { max-width: 300px; }
 .maxwidth400onsmartphone { max-width: 400px; }
	.minwidth50imp { min-width: 50px !important; }
	.minwidth75imp { min-width: 60px !important; }
 .minwidth100imp { min-width: 60px !important; }
 .minwidth200imp { min-width: 60px !important; }
 .minwidth300imp { min-width: 100px !important; }
 .minwidth400imp { min-width: 150px !important; }
 .minwidth500imp { min-width: 250px !important; }
 .titlefield { width: auto; }
 .titlefieldcreate { width: auto; }

	#tooltip {
		position: absolute;
		width: 300px;
	}

	/* intput, input[type=text], */
	select {
		width: 98%;
		min-width: 40px;
	}

	div.divphotoref {
		padding-right: 5px;
	 padding-bottom: 5px;
	}
 img.photoref, div.photoref {
 	border: none;
 -webkit-box-shadow: none;
 box-shadow: none;
 padding: 4px;
 	height: 20px;
 	width: 20px;
 object-fit: contain;
 }

	div.statusref {
 	padding-right: 10px;
 	}
	div.statusref img {
 	padding-right: 3px !important;
 	}
	div.statusrefbis {
 	padding-right: 3px !important;
 	}

 	input.buttonpayment {
		min-width: 300px;
 	}
}
.linkobject { cursor: pointer; }


/* ============================================================================== */
/* Styles for dragging lines */
/* ============================================================================== */

.dragClass {
	color: #002255;
}
td.showDragHandle {
	cursor: move;
}
.tdlineupdown {
	white-space: nowrap;
	min-width: 10px;
}


/* ============================================================================== */
/* Styles de positionnement des zones */
/* ============================================================================== */

#id-container {
	display: table;					/* DOL_XXX Empeche fonctionnement correct du scroll horizontal sur tableau, avec datatable ou CSS */
	table-layout: fixed;
	width: auto;
}
#id-right, #id-left {
	padding-top: 16px;
	padding-bottom: 16px;

	display: table-cell;			/* DOL_XXX Empeche fonctionnement correct du scroll horizontal sur tableau, avec datatable ou CSS */
	float: none;
	vertical-align: top;
}
#id-right {	/* This must stay id-right and not be replaced with echo $right */
	width: 100%;
	background: rgb(255,255,255);
}
#id-left {
/*	background-color: #fff;
	border-right: 1px #888 solid;
	height: calc(100% - 50px);*/
}

.side-nav-vert {
	position: sticky;
	top: 0px;
	z-index: 210;
}

.side-nav {
	display: table-cell;
	border-right: 1px solid #d0d0d0;
	box-shadow: 3px 0 6px -2px #eee;
	background: rgb(224,224,224);
}
div.blockvmenulogo
{
	border-bottom: 0 !important;
}
div.blockvmenupair, div.blockvmenuimpair {
	border-top: none !important;
	border-left: none !important;
	border-right: none !important;
	border-bottom: 1px solid #e0e0e0;
	padding-left: 0 !important;
}
div.blockvmenuend, div.blockvmenubookmarks {
	border: none !important;
	padding-left: 0 !important;
}
div.vmenu, td.vmenu {
	padding-right: 10px !important;
}
.blockvmenu .menu_titre {
 margin-top: 4px;
 margin-bottom: 3px;
}

/* Try responsive even not on smartphone
#id-container {
	width: 100%;
}
#id-right {
	width: calc(100% - 200px) !important;
}
*/

/* For smartphone (testmenuhider is on) */



div.fiche {
	margin-left: 25px;
	margin-right: 24px;
		}
body.onlinepaymentbody div.fiche {	/* For online payment page */
	margin: 20px !important;
}
div.fiche>table:first-child {
	margin-bottom: 15px !important;
}
div.fichecenter {
	/* margin-top: 10px; */
	width: 100%;
	clear: both;	/* This is to have div fichecenter that are true rectangles */
}
div.fichecenterbis {
	margin-top: 8px;
}
div.fichethirdleft {
	float: left;
	width: 50%;
	}
div.fichetwothirdright {
	float: right;
	width: 50%;
	}
div.fichehalfleft {
	float: left;
	width: 50%;
}
div.fichehalfright {
	float: right;
	width: 50%;
}
div.ficheaddleft {
	padding-left: 16px;
}
/* Force values on one colum for small screen */
@media only screen and (max-width: 1000px)
{
 div.fiche {
 	margin-left: 20px;
 	margin-right: 6px;
 	 }
 div.fichecenter {
 	width: 100%;
 	clear: both;	/* This is to have div fichecenter that are true rectangles */
 }
 div.fichecenterbis {
 	margin-top: 8px;
 }
 div.fichethirdleft {
 	float: none;
 	width: auto;
 	padding-bottom: 6px;
 }
 div.fichetwothirdright {
 	float: none;
 	width: auto;
 	padding-bottom: 6px;
 }
 div.fichehalfleft {
 	float: none;
 	width: auto;
 }
 div.fichehalfright {
 	float: none;
 	width: auto;
 }
 div.ficheaddleft {
 	padding-left: 0px;
 	margin-top: 10px;
 }
}

/* For table into table into card */
div.ficheaddleft tr.liste_titre:first-child td table.nobordernopadding td {
 padding: 0 0 0 0;
}
div.nopadding {
	padding: 0 !important;
}

.containercenter {
	display : table;
	margin : 0px auto;
}

#pictotitle {
	margin-right: 8px;
	margin-bottom: 4px;
}
.pictoobjectwidth {
	width: 14px;
}
.pictosubstatus {
 padding-left: 2px;
 padding-right: 2px;
}
.pictostatus {
	width: 15px;
	vertical-align: middle;
	margin-top: -3px
}
.pictowarning, .pictopreview {
 padding-left: 3px;
}
.pictoedit, .pictowarning, .pictodelete {
 vertical-align: text-bottom;
}
.fiche img.pictoedit {
 opacity: 0.7;
}
.colorthumb {
	padding-left: 1px !important;
	padding-right: 1px;
	padding-top: 1px;
	padding-bottom: 1px;
	width: 44px;
	text-align:center;
}
div.attacharea {
	padding-top: 18px;
	padding-bottom: 10px;
}
div.attachareaformuserfileecm {
	padding-top: 0;
	padding-bottom: 0;
}

div.arearef {
	padding-top: 2px;
	margin-bottom: 10px;
	padding-bottom: 7px;
}
div.arearefnobottom {
	padding-top: 2px;
	padding-bottom: 4px;
}
div.heightref {
	min-height: 80px;
}
div.divphotoref {
	padding-right: 20px;
}
div.paginationref {
	padding-bottom: 10px;
}
div.statusref {
	float: right;
	padding-left: 12px;
	margin-top: 8px;
	margin-bottom: 10px;
	clear: both;
}
div.statusref img {
 padding-left: 8px;
 	padding-right: 9px;
 	vertical-align: text-bottom;
}
div.statusrefbis {
 padding-left: 8px;
 	padding-right: 9px;
 	vertical-align: text-bottom;
}
img.photoref, div.photoref {
	border: 1px solid #CCC;
 -webkit-box-shadow: 2px 2px 4px #ccc;
 box-shadow: 2px 2px 4px #ccc;
 padding: 4px;
	height: 80px;
	width: 80px;
 object-fit: contain;
}
img.fitcontain {
 object-fit: contain;
}
div.photoref {
	display:table-cell;
	vertical-align:middle;
	text-align:center;
}
img.photorefnoborder {
 padding: 2px;
	height: 48px;
	width: 48px;
 object-fit: contain;
 border: 1px solid #AAA;
 border-radius: 100px;
}
.underrefbanner {
}
.underbanner {
	border-bottom: 2px solid rgb(121,97,170);
}
.tdhrthin {
	margin: 0;
	padding-bottom: 0 !important;
}

/* ============================================================================== */
/* Menu top et 1ere ligne tableau */
/* ============================================================================== */


div#id-top {
	background: rgb(121,97,170);
}

div#tmenu_tooltip {
	padding-right: 120px;
}

div.tmenusep {
}

div.tmenudiv {
 position: relative;
 display: block;
 /*white-space: nowrap;*/
 border-top: 0px;
 border-left: 0px;
 border-right: 0px;
 padding: 0px 0px 0px 0px;	/* t r b l */
 margin: 0px 0px 0px 0px;	/* t r b l */
	font-size: 13px;
 font-weight: normal;
	color: #000000;
 text-decoration: none;
}
div.tmenudisabled, a.tmenudisabled {
	opacity: 0.6;
}
a.tmenudisabled:link, a.tmenudisabled:visited, a.tmenudisabled:hover, a.tmenudisabled:active {
 font-weight: normal;
	padding: 0px 5px 0px 5px;
	white-space: nowrap;
	color: #FFFFFF;
	text-decoration: none;
	cursor: not-allowed;
}

a.tmenu:link, a.tmenu:visited, a.tmenu:hover, a.tmenu:active {
 font-weight: normal;
	padding: 0px 5px 0px 3px;
	/*white-space: nowrap;*/
	color: #FFFFFF;
 text-decoration: none;
}
a.tmenusel:link, a.tmenusel:visited, a.tmenusel:hover, a.tmenusel:active {
	font-weight: normal;
	padding: 0px 5px 0px 3px;
	margin: 0px 0px 0px 0px;
	white-space: nowrap;
	color: #FFFFFF;
	text-decoration: none !important;
}


ul.tmenu {	/* t r b l */
 padding: 0px 0px 0px 0px;
 margin: 0px 0px 0px 0px;
	list-style: none;
	display: flex;
}
ul.tmenu li {
	flex: 1;
}
ul.tmenu li a.tmenuimage {
	color: white;
	font-weight: 600;
}
ul.tmenu li .fa {
	margin-bottom: 5px;
}
li.tmenu, li.tmenusel {
	min-width: 66px;	text-align: center;
	vertical-align: bottom;
		float: left;
 	position:relative;
	display: block;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	font-weight: normal;
}
li.menuhider:hover {
	background-image: none !important;
}
li.tmenusel, li.tmenu:hover {
 background-image: -o-linear-gradient(bottom, rgba(250,250,250,0.3) 10px, rgba(0,0,0,0.5) 10px);
 background-image: -moz-linear-gradient(bottom, rgba(0,0,0,0.5) 10px, rgba(250,250,250,0) 10px);
 background-image: -webkit-linear-gradient(bottom, rgba(0,0,0,0.5) 10px, rgba(250,250,250,0) 10px);
 background-image: -ms-linear-gradient(bottom, rgba(250,250,250,0.3) 10px, rgba(0,0,0,0.5) 10px);
 background-image: linear-gradient(bottom, rgba(250,250,250,0.3) 10px, rgba(0,0,0,0.5) 10px);
	/* background: rgb(121,97,170); */
}
.tmenuend .tmenuleft { width: 0px; }
.tmenuend { display: none; }
div.tmenuleft
{
	float: left;
	margin-top: 0px;
		width: 5px;
	/* background: url(/htdocs/theme/eldy/img/menutab-r.png) 0 -6px no-repeat; */
			height: 56px;
	}
div.tmenucenter
{
	padding-left: 0px;
	padding-right: 3px;
		padding-top: 9px;
 height: 56px;
		padding-bottom: 7px;
 width: 100%;
	/*
 max-width: 104px;
 	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	color: #FFFFFF;
	*/
}
#menu_titre_logo {
	padding-top: 0;
	padding-bottom: 0;
}
div.menu_titre {
	padding-top: 4px;
	padding-bottom: 4px;
	overflow: hidden;
 text-overflow: ellipsis;
 width: 188px;				/* required to have overflow working. must be same than menu_contenu */
}
.mainmenuaspan
{
	padding-right: 4px;
}

div.mainmenu {
	position : relative;
	background-repeat:no-repeat;
	background-position:center top;
	height: 34px;
	margin-left: 0px;
	min-width: 40px;
}

/* Do not load menu img if hidden to save bandwidth */

/*div.mainmenu.home{
	background-image: url(/htdocs/theme/eldy/img/menus/home.png);
	background-position-x: center;
}

div.mainmenu.billing {
	background-image: url(/htdocs/theme/eldy/img/menus/money.png);
}

div.mainmenu.accountancy {
	background-image: url(/htdocs/theme/eldy/img/menus/money.png);
}

div.mainmenu.agenda {
	background-image: url(/htdocs/theme/eldy/img/menus/agenda.png);
}

div.mainmenu.bank {
 background-image: url(/htdocs/theme/eldy/img/menus/bank.png);
}

div.mainmenu.cashdesk {
	background-image: url(/htdocs/theme/eldy/img/menus/pointofsale.png);
}

div.mainmenu.companies {
	background-image: url(/htdocs/theme/eldy/img/menus/company.png);
}

div.mainmenu.commercial {
	background-image: url(/htdocs/theme/eldy/img/menus/commercial.png);
}

div.mainmenu.ecm {
	background-image: url(/htdocs/theme/eldy/img/menus/ecm.png);
}

div.mainmenu.externalsite {
	background-image: url(/htdocs/theme/eldy/img/menus/externalsite.png);
}

div.mainmenu.ftp {
 background-image: url(/htdocs/theme/eldy/img/menus/tools.png);
}

div.mainmenu.hrm {
	background-image: url(/htdocs/theme/eldy/img/menus/holiday.png);
}

div.mainmenu.members {
	background-image: url(/htdocs/theme/eldy/img/menus/members.png);
}

div.mainmenu.menu {
	background-image: url(/htdocs/theme/eldy/img/menus/menu.png);
	top: 7px;
}

div.mainmenu.products {
	background-image: url(/htdocs/theme/eldy/img/menus/products.png);
}

div.mainmenu.project {
	background-image: url(/htdocs/theme/eldy/img/menus/project.png);
}

div.mainmenu.tools {
	background-image: url(/htdocs/theme/eldy/img/menus/tools.png);
}

div.mainmenu.website {
	background-image: url(/htdocs/theme/eldy/img/menus/externalsite.png);
}*/

#mainmenutd_home { background-color: #E06060; }
#mainmenutd_agenda { background-color: #6060D9; }
#mainmenutd_companies { background-color: #60C060; }
#mainmenutd_products { background-color: #8060B0; }
#mainmenutd_commercial { background-color: #E08060; }
#mainmenutd_billing { background-color: #4688F1; }
#mainmenutd_bank { background-color: #F9BB2D; }
#mainmenutd_accountancy { background-color: #3C65C7; }
#mainmenutd_hrm { background-color: #E8453C; }
#mainmenutd_tools { background-color: #999999; }
#mainmenutd_ecm { background-color: #F09040; }
#mainmenutd_expe { background-color: #795548; }
#mainmenutd_cashdesk { background-color: #40C0E0; }

.tmenuimage .fa {
	font-size: 30px;
}

/* A mainmenu entry was found but img file blockedlog.png not found (check /blockedlog/img/blockedlog.png), so we use a generic one */
div.mainmenu.blockedlog {
	background-image: url(/htdocs/theme/eldy/img/menus/generic1.png);
}
div.mainmenu.shippableorder {
	background-image: url(/htdocs/shippableorder/img/shippableorder.png);
}
/* A mainmenu entry was found but img file adressefrance.png not found (check /adressefrance/img/adressefrance.png), so we use a generic one */
div.mainmenu.adressefrance {
	background-image: url(/htdocs/theme/eldy/img/menus/generic2.png);
}
div.mainmenu.commissions {
	background-image: url(/htdocs/custom/commissions/img/commissions.png);
}
/* A mainmenu entry was found but img file api.png not found (check /api/img/api.png), so we use a generic one */
div.mainmenu.api {
	background-image: url(/htdocs/theme/eldy/img/menus/generic3.png);
}
/* A mainmenu entry was found but img file changetiers.png not found (check /changetiers/img/changetiers.png), so we use a generic one */
div.mainmenu.changetiers {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
div.mainmenu.subtotal {
	background-image: url(/htdocs/custom/subtotal/img/subtotal.png);
}
/* A mainmenu entry was found but img file showprice.png not found (check /showprice/img/showprice.png), so we use a generic one */
div.mainmenu.showprice {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
/* A mainmenu entry was found but img file shippinglabels.png not found (check /shippinglabels/img/shippinglabels.png), so we use a generic one */
div.mainmenu.shippinglabels {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
div.mainmenu.arronditotal {
	background-image: url(/htdocs/custom/arronditotal/img/arronditotal.png);
}
/* A mainmenu entry was found but img file importline.png not found (check /importline/img/importline.png), so we use a generic one */
div.mainmenu.importline {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
div.mainmenu.inventory {
	background-image: url(/htdocs/custom/inventory/img/inventory.png);
}
div.mainmenu.commdept {
	background-image: url(/htdocs/custom/commdept/img/commdept.png);
}
div.mainmenu.portofolio {
	background-image: url(/htdocs/custom/portofolio/img/portofolio.png);
}
/* A mainmenu entry was found but img file mydiscount.png not found (check /mydiscount/img/mydiscount.png), so we use a generic one */
div.mainmenu.mydiscount {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
div.mainmenu.lemodule {
	background-image: url(/htdocs/custom/lemodule/img/lemodule.png);
}
/* A mainmenu entry was found but img file logistique.png not found (check /logistique/img/logistique.png), so we use a generic one */
div.mainmenu.logistique {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
/* A mainmenu entry was found but img file labelprint.png not found (check /labelprint/img/labelprint.png), so we use a generic one */
div.mainmenu.labelprint {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
/* A mainmenu entry was found but img file labelprint_t_2.png not found (check /labelprint_t_2/img/labelprint_t_2.png), so we use a generic one */
div.mainmenu.labelprint_t_2 {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
/* A mainmenu entry was found but img file labelprint_t_3.png not found (check /labelprint_t_3/img/labelprint_t_3.png), so we use a generic one */
div.mainmenu.labelprint_t_3 {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
/* A mainmenu entry was found but img file labelprint_labels_5.png not found (check /labelprint_labels_5/img/labelprint_labels_5.png), so we use a generic one */
div.mainmenu.labelprint_labels_5 {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
/* A mainmenu entry was found but img file invoicetracking.png not found (check /invoicetracking/img/invoicetracking.png), so we use a generic one */
div.mainmenu.invoicetracking {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}
div.mainmenu.ecommerce {
	background-image: url(/htdocs/custom/ecommerce/img/ecommerce.png);
}
/* A mainmenu entry was found but img file didacto.png not found (check /didacto/img/didacto.png), so we use a generic one */
div.mainmenu.didacto {
	background-image: url(/htdocs/theme/eldy/img/menus/generic4.png);
}


.tmenuimage {
 padding:0 0 0 0 !important;
 margin:0 0px 0 0 !important;
 }



/* Login */

.bodylogin
{
	background: #f0f0f0;
	display: table;
 position: absolute;
 height: 100%;
 width: 100%;
}
.login_center {
	display: table-cell;
 vertical-align: middle;
}
.login_vertical_align {
	padding: 10px;
	padding-bottom: 80px;
}
form#login {
	padding-bottom: 30px;
	font-size: 13px;
	vertical-align: middle;
}
.login_table_title {
	max-width: 530px;
	color: #aaa !important;
	padding-bottom: 20px;
}
.login_table label {
	text-shadow: 1px 1px 1px #FFF;
}
.login_table {
	margin: 0px auto; /* Center */
	padding-left:6px;
	padding-right:6px;
	padding-top:16px;
	padding-bottom:12px;
	max-width: 560px;

	background-color: #FFFFFF;

	-webkit-box-shadow: 0 2px 23px 2px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(60,60,60,0.15);
	box-shadow: 0 2px 23px 2px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(60,60,60,0.15);

	border-radius: 5px;
	/*border-top:solid 1px rgba(180,180,180,.4);
	border-left:solid 1px rgba(180,180,180,.4);
	border-right:solid 1px rgba(180,180,180,.4);
	border-bottom:solid 1px rgba(180,180,180,.4);*/
}
.login_table input#username, .login_table input#password, .login_table input#securitycode {
	border: none;
	border-bottom: solid 1px rgba(180,180,180,.4);
	padding: 5px;
	margin-left: 5px;
	margin-top: 5px;
}
.login_table input#username:focus, .login_table input#password:focus, .login_table input#securitycode:focus {
	outline: none !important;
	/* box-shadow: none;
	-webkit-box-shadow: 0 0 0 50px #FFF inset;
	box-shadow: 0 0 0 50px #FFF inset;*/
}
.login_main_message {
	text-align: center;
	max-width: 570px;
	margin-bottom: 22px;
}
.login_main_message .error {
	/* border: 1px solid #caa; */
	padding: 10px;
}
div#login_left, div#login_right {
	display: inline-block;
	min-width: 245px;
	padding-top: 10px;
	padding-left: 16px;
	padding-right: 16px;
	text-align: center;
	vertical-align: middle;
}
div#login_right select#entity {
 margin-top: 10px;
}
table.login_table tr td table.none tr td {
	padding: 2px;
}
table.login_table_securitycode {
	border-spacing: 0px;
}
table.login_table_securitycode tr td {
	padding-left: 0px;
	padding-right: 4px;
}
#securitycode {
	min-width: 60px;
}
#img_securitycode {
	border: 1px solid #DDDDDD;
}
#img_logo, .img_logo {
	max-width: 170px;
	max-height: 90px;
}

div.backgroundsemitransparent {
	background:rgba(255,255,255,0.6);
	padding-left: 10px;
	padding-right: 10px;
}
div.login_block {
	position: absolute;
	text-align: right;
	right: 0;
	top: 0;
	font-weight: bold;
	max-width: 130px;
	}
div.login_block a {
	color: #7863A8;
}
div.login_block table {
	display: inline;
}
div.login {
	white-space:nowrap;
	font-weight: bold;
	float: right;
}
div.login a {
	color: #7863A8;
}
div.login a:hover {
	color: #7863A8;
	text-decoration:underline;
}
div.login_block_user {
	display: inline-block;
	padding-top: 3px;
		min-width: 120px;
	}
div.login_block_other {
	display: inline-block;
	clear: both;
}
div.login_block_other { padding-top: 3px; text-align: right; }
.login_block_elem {
	float: right;
	vertical-align: top;
	padding: 0px 3px 0px 4px !important;
	height: 16px;
}
.atoplogin, .atoplogin:hover {
	color: #FFFFFF !important;
	font-weight: normal !important;
}
.alogin, .alogin:hover {
	font-weight: normal !important;
	font-size: 12px !important;
	padding-top: 2px;
}
.alogin:hover, .atoplogin:hover {
	text-decoration:underline !important;
}
span.fa.atoplogin, span.fa.atoplogin:hover {
 font-size: 16px;
 text-decoration: none !important;
}
img.login, img.printer, img.entity {
	/* padding: 0px 0px 0px 4px; */
	/* margin: 0px 0px 0px 8px; */
	text-decoration: none;
	color: white;
	font-weight: bold;
}
.userimg.atoplogin img.userphoto, .userimgatoplogin img.userphoto {		/* size for user photo in login bar */
	width: 16px;
 height: 16px;
 border-radius: 8px;
 background-size: contain;
 background-size: contain;
}
img.userphoto {			/* size for user photo in lists */
	border-radius: 9px;
	width: 18px;
 height: 18px;
 background-size: contain;
 vertical-align: middle;
}
img.userphotosmall {			/* size for user photo in lists */
	border-radius: 6px;
	width: 12px;
 height: 12px;
 background-size: contain;
 vertical-align: middle;
 background-color: #FFF;
}
.span-icon-user {
	background-image: url(/htdocs/theme/eldy/img/object_user.png);
	background-repeat: no-repeat;
}
.span-icon-password {
	background-image: url(/htdocs/theme/eldy/img/lock.png);
	background-repeat: no-repeat;
}

/* ============================================================================== */
/* Menu gauche */
/* ============================================================================== */

div.vmenu, td.vmenu {
 margin-right: 2px;
 position: relative;
 float: left;
 padding: 0px;
 padding-bottom: 0px;
 padding-top: 1px;
 width: 190px;
}

.vmenu {
 width: 190px;
	margin-left: 6px;
	}

/* Force vmenusearchselectcombo with type=text differently than without because beautify with select2 affect vmenusearchselectcombo differently */
input.vmenusearchselectcombo[type=text] {
	width: 180px !important;
}
.vmenusearchselectcombo {
	width: 188px;
}

.menu_contenu {
	padding-top: 3px;
	padding-bottom: 3px;
	overflow: hidden;
 text-overflow: ellipsis;
 width: 188px;				/* required to have overflow working. must be same than .menu_titre */
}
#menu_contenu_logo { /* padding-top: 0; */ }
.companylogo { }
.searchform { padding-top: 10px; }

a.vmenu:link, a.vmenu:visited, a.vmenu:hover, a.vmenu:active { white-space: nowrap; font-size:13px; font-family: roboto,arial,tahoma,verdana,helvetica; text-align: left; font-weight: bold; }
font.vmenudisabled { font-size:13px; font-family: roboto,arial,tahoma,verdana,helvetica; text-align: left; font-weight: bold; color: #aaa; margin-left: 4px; }
a.vmenu:link, a.vmenu:visited { color: #7863A8; }

a.vsmenu:link, a.vsmenu:visited, a.vsmenu:hover, a.vsmenu:active, span.vsmenu { font-size:13px; font-family: roboto,arial,tahoma,verdana,helvetica; text-align: left; font-weight: normal; color: #202020; margin: 1px 1px 1px 6px; }
font.vsmenudisabled { font-size:13px; font-family: roboto,arial,tahoma,verdana,helvetica; text-align: left; font-weight: normal; color: #aaa; }
a.vsmenu:link, a.vsmenu:visited { color: #000; white-space: nowrap; }
font.vsmenudisabledmargin { margin: 1px 1px 1px 6px; }
li a.vsmenudisabled, li.vsmenudisabled { color: #aaa !important; }

a.help:link, a.help:visited, a.help:hover, a.help:active, span.help { font-size:12px; font-family: roboto,arial,tahoma,verdana,helvetica; text-align: left; font-weight: normal; color: #aaa; text-decoration: none; }

.vmenu div.blockvmenufirst, .vmenu div.blockvmenulogo, .vmenu div.blockvmenusearchphone, .vmenu div.blockvmenubookmarks
{
 border-top: 1px solid #BBB;
}
a.vsmenu.addbookmarkpicto {
 padding-right: 10px;
}
div.blockvmenusearchphone
{
	border-bottom: none !important;
}
.vmenu div.blockvmenuend, .vmenu div.blockvmenulogo
{
	margin: 0 0 8px 2px;
}
.vmenu div.blockvmenusearch
{
	padding-bottom: 4px;
/*	border-bottom: 1px solid #e0e0e0; */
}
.vmenu div.blockvmenuend
{
	padding-bottom: 5px;
}
.vmenu div.blockvmenulogo
{
	padding-bottom: 10px;
	padding-top: 0;
	background-color: rgb(224,224,224);
}
div.blockvmenubookmarks
{
	padding-top: 10px !important;
	padding-bottom: 16px !important;
}
div.blockvmenupair, div.blockvmenuimpair, div.blockvmenubookmarks, div.blockvmenuend
{
	font-family: roboto,arial,tahoma,verdana,helvetica;
	color: #000000;
	text-align: left;
	text-decoration: none;
 padding-left: 5px;
 padding-right: 1px;
 padding-top: 3px;
 padding-bottom: 3px;
 margin: 0 0 0 2px;

	background: rgb(224,224,224);

 border-left: 1px solid #AAA;
 border-right: 1px solid #BBB;
}

div.blockvmenusearch
{
	font-family: roboto,arial,tahoma,verdana,helvetica;
	color: #7863A8;
	text-align: left;
	text-decoration: none;
 margin: 1px 0px 0px 2px;
	background: rgb(224,224,224);
}

div.blockvmenusearch > form > div {
	padding-top: 3px;
}
div.blockvmenusearch > form > div > label {
	padding-right: 2px;
}

div.blockvmenuhelp
{
	font-family: roboto,arial,tahoma,verdana,helvetica;
	color: #000000;
	text-align: center;
	text-decoration: none;
 padding-left: 0px;
 padding-right: 6px;
 padding-top: 3px;
 padding-bottom: 3px;
 margin: 4px 0px 0px 0px;
}


td.barre {
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	background: #b3c5cc;
	font-family: roboto,arial,tahoma,verdana,helvetica;
	color: #000000;
	text-align: left;
	text-decoration: none;
}

td.barre_select {
	background: #b3c5cc;
	color: #000000;
}

td.photo {
	background: #F4F4F4;
	color: #000000;
 border: 1px solid #bbb;
}

/* ============================================================================== */
/* Panes for Main */
/* ============================================================================== */

/*
 * PANES and CONTENT-DIVs
 */

#mainContent, #leftContent .ui-layout-pane {
 padding: 0px;
 overflow:	auto;
}

#mainContent, #leftContent .ui-layout-center {
	padding: 0px;
	position: relative; /* contain floated or positioned elements */
 overflow: auto; /* add scrolling to content-div */
}


/* ============================================================================== */
/* Toolbar for ECM or Filemanager */
/* ============================================================================== */

td.ecmroot {
 padding-bottom: 0 !important;
}

.largebutton {
	/* border-top: 1px solid #CCC !important; */
 padding: 0px 4px 14px 4px !important;
 min-height: 32px;
}


a.toolbarbutton {
 margin-top: 0px;
 margin-left: 4px;
 margin-right: 4px;
 height: 30px;
}
img.toolbarbutton {
	margin-top: 1px;
 height: 30px;
}





/* ============================================================================== */
/* Onglets */
/* ============================================================================== */
div.tabs {
 text-align: left;
 padding-left: 6px !important;
 padding-right: 6px !important;
	clear:both;
	height:100%;
	/* background-image: linear-gradient(to top,#f6f6f6 0,#fff 8px); */
}
div.tabsElem {
	margin-top: 1px;
}	/* To avoid overlap of tabs when not browser */
div.tabsElem a {
 /* font-weight: normal !important; */
}
div.tabBar {
 color: #111111;
 padding-top: 16px;
 padding-left: 0px; padding-right: 0px;
 padding-bottom: 2px;
 margin: 0px 0px 16px 0px;
 border-top: 1px solid #BBB;
 /* border-bottom: 1px solid #AAA; */
	width: auto;
	background: rgb(255,255,255);
}
div.tabBar div.titre {
	padding-top: 20px;
}

div.tabBarWithBottom {
	padding-bottom: 18px;
	border-bottom: 1px solid #aaa;
}
div.tabBar table.tableforservicepart2:last-child {
 border-bottom: 1px solid #aaa;
}

div.popuptabset {
	padding: 6px;
	background: #fff;
	border: 1px solid #888;
}
div.popuptab {
	padding-top: 3px;
	padding-bottom: 3px;
	padding-left: 5px;
	padding-right: 5px;
}
div.tabsAction {
 margin: 20px 0em 20px 0em;
 padding: 0em 0em;
 text-align: right;
}
div.tabsActionNoBottom {
 margin-bottom: 0px;
}
div.tabsAction > a {
	margin-bottom: 16px !important;
}

a.tabTitle {
 color:rgba(0,0,0,.5) !important;
 text-shadow:1px 1px 1px #ffffff;
	font-family: roboto,arial,tahoma,verdana,helvetica;
	font-weight: normal !important;
 padding: 4px 6px 2px 0px;
 margin-right: 10px;
 text-decoration: none;
 white-space: nowrap;
}

a.tabunactive {
 color: rgb(0,0,100) !important;
}
a.tab:link, a.tab:visited, a.tab:hover, a.tab#active {
	font-family: roboto,arial,tahoma,verdana,helvetica;
	padding: 12px 9px 12px;
 margin: 0em 0.2em;
 text-decoration: none;
 white-space: nowrap;

	border-right: 1px solid transparent;
	border-left: 1px solid transparent;
	border-top: 1px solid transparent;
	border-bottom: 0px !important;

	background-image: none !important;
}
.tabactive, a.tab#active {
	color: #111111 !important;
	background: rgb(255,255,255) !important;
	margin: 0 0.2em 0 0.2em !important;

	border-right: 1px solid #AAA !important;
	border-left: 1px solid #AAA !important;
	border-top: 2px solid rgb(121,97,170) !important;
}
a.tab:hover
{
	/*
	background: rgba(255,255,255, 0.5) url(/htdocs/theme/eldy/img/nav-overlay3.png) 50% 0 repeat-x;
	color: #111111;
	*/
	text-decoration: underline;
}
a.tabimage {
 color: #434956;
	font-family: roboto,arial,tahoma,verdana,helvetica;
 text-decoration: none;
 white-space: nowrap;
}

td.tab {
 background: #dee7ec;
}

span.tabspan {
 background: #dee7ec;
 color: #434956;
	font-family: roboto,arial,tahoma,verdana,helvetica;
 padding: 0px 6px;
 margin: 0em 0.2em;
 text-decoration: none;
 white-space: nowrap;
	-webkit-border-radius:4px 4px 0px 0px;
	border-radius:4px 4px 0px 0px;

 border-right: 1px solid #555555;
 border-left: 1px solid #D8D8D8;
 border-top: 1px solid #D8D8D8;
}

/* ============================================================================== */
/* Boutons actions */
/* ============================================================================== */

div.divButAction {
	margin-bottom: 1.4em;
}
div.tabsAction > a.butAction, div.tabsAction > a.butActionRefused {
	margin-bottom: 1.4em !important;
}
div.tabsActionNoBottom > a.butAction, div.tabsActionNoBottom > a.butActionRefused {
	margin-bottom: 0 !important;
}

span.butAction, span.butActionDelete {
	cursor: pointer;
}

.butAction, .butAction:link, .butAction:visited, .butAction:hover, .butAction:active, .butActionDelete, .butActionDelete:link, .butActionDelete:visited, .butActionDelete:hover, .butActionDelete:active {
	text-decoration: none;
	margin: 0em 0.9em !important;
	padding: 0.6em 0.7em;
	font-family: roboto,arial,tahoma,verdana,helvetica;
 font-weight: normal;
 border-color: #c5c5c5;
 border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25);
 display: inline-block;
 text-align: center;
 cursor: pointer;
 color: #fff;
 background: rgb(121,97,170);
 border: 1px solid rgb(121,97,170);

 border-top-right-radius: 0 !important;
 border-bottom-right-radius: 0 !important;
 border-top-left-radius: 0 !important;
 border-bottom-left-radius: 0 !important;
}

.butAction:hover {
 -webkit-box-shadow: 0px 0px 6px 1px rgba(50, 50, 50, 0.4), 0px 0px 0px rgba(60,60,60,0.1);
 box-shadow: 0px 0px 6px 1px rgba(50, 50, 50, 0.4), 0px 0px 0px rgba(60,60,60,0.1);
}

.butActionDelete, .butActionDelete:link, .butActionDelete:visited, .butActionDelete:hover, .butActionDelete:active, .buttonDelete {
 background: #633;
 border: 1px solid #633;
 color: #FFF;
}

.butActionDelete:hover {
 -webkit-box-shadow: 0px 0px 6px 1px rgba(50, 50, 50, 0.4), 0px 0px 0px rgba(60,60,60,0.1);
 box-shadow: 0px 0px 6px 1px rgba(50, 50, 50, 0.4), 0px 0px 0px rgba(60,60,60,0.1);
}

.butActionRefused {
 text-decoration: none !important;
	white-space: nowrap !important;
	cursor: not-allowed !important;
	margin: 0em 0.9em;
	padding: 0.6em 0.7em;
 font-family: roboto,arial,tahoma,verdana,helvetica !important;
 font-weight: normal !important;
 display: inline-block;
 text-align: center;
 cursor: pointer;
 color: #999 !important;
 border: 1px solid #bbb;
}

.butActionTransparent {
	color: #222 ! important;
	background-color: transparent ! important;
}




/* ============================================================================== */
/* Tables */
/* ============================================================================== */

.allwidth {
	width: 100%;
}

#undertopmenu {
	background-repeat: repeat-x;
	margin-top: 0px;
}


.paddingrightonly {
	border-collapse: collapse;
	border: 0px;
	margin-left: 0px;
	padding-left: 0px !important;
	padding-right: 4px !important;
}
.nocellnopadd {
	list-style-type:none;
	margin: 0px !important;
	padding: 0px !important;
}
tr.nocellnopadd td.nobordernopadding, tr.nocellnopadd td.nocellnopadd
{
	border: 0px;
}

.notopnoleft {
	border-collapse: collapse;
	border: 0px;
	padding-top: 0px;
	padding-left: 0px;
	padding-right: 16px;
	padding-bottom: 4px;
	margin-right: 0px;
}
.notopnoleftnoright {
	border-collapse: collapse;
	border: 0px;
	padding-top: 0px;
	padding-left: 0px;
	padding-right: 0px;
	padding-bottom: 4px;
	margin: 0px 0px 0px 0px;
}


table.border, table.dataTable, .table-border, .table-border-col, .table-key-border-col, .table-val-border-col, div.border {
	border-collapse: collapse !important;
	padding: 1px 2px 1px 3px;			/* t r b l */
}
table.borderplus {
	border: 1px solid #BBB;
}
.border tbody tr, .border tbody tr td, div.tabBar table.border tr, div.tabBar table.border tr td, div.tabBar div.border .table-border-row, div.tabBar div.border .table-key-border-col, div.tabBar div.border .table-val-border-col {
	height: 22px;
}
div.tabBar div.border .table-border-row, div.tabBar div.border .table-key-border-col, div.tabBar .table-val-border-col {
	vertical-align: middle;
}
div .tdtop {
 vertical-align: top !important;
	/* padding-top: 8px !important; */
	padding-bottom: 2px !important;
	padding-bottom: 0px;
}

table.border td, div.border div div.tagtd {
	padding: 5px 2px 5px 2px;
	border-collapse: collapse;
}

td.border, div.tagtable div div.border {
	border-top: 1px solid #000000;
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	border-left: 1px solid #000000;
}
.table-key-border-col {
	/* width: 25%; */
	vertical-align:top;
}
.table-val-border-col {
	width:auto;
}


/* Main boxes */
.noborderbottom {
 border-bottom: none !important;
}
.ficheaddleft table.noborder {
	margin: 0px 0px 0px 0px;
}
table.liste, table.noborder, table.formdoc, div.noborder {
	width: 100%;

	border-collapse: separate !important;
	border-spacing: 0px;

	border-top-width: 2px;
	border-top-color: rgb(121,97,170);
	border-top-style: solid;

	border-bottom-width: 1px;
	border-bottom-color: #BBB;
	border-bottom-style: solid;

	margin: 0px 0px 5px 0px;
}
div.tabBar div.ficheaddleft table.noborder:last-of-type {
 border-bottom: 1px solid #aaa;
}
div.tabBar div.ficheaddleft table.noborder {
 border-bottom: none;
}

table.paddingtopbottomonly tr td {
	padding-top: 1px;
	padding-bottom: 2px;
}
.liste_titre_filter {
	background: rgb(177,155,201) !important;
}
tr.liste_titre_filter td.liste_titre {
 border-bottom: 1px solid #ddd;
}
.liste_titre_create td, .liste_titre_create th, .liste_titre_create .tagtd
{
 /*border-top-width: 1px;
 border-top-color: rgb(121,97,170);
 border-top-style: solid;*/
}
.liste_titre_add td, .liste_titre_add th, .liste_titre_add .tagtd
{
 border-top-width: 2px;
 border-top-color: rgb(121,97,170);
 border-top-style: solid;
}
table.liste tr, table.noborder tr, div.noborder form {
	border-top-color: #FEFEFE;
	min-height: 20px;
}
table.liste th, table.noborder th, table.noborder tr.liste_titre td, table.noborder tr.box_titre td {
	padding: 7px 8px 7px 8px;			/* t r b l */
}
table.liste td, table.noborder td, div.noborder form div {
	padding: 7px 8px 7px 8px;			/* t r b l */
	line-height: 1.2em;
}
div.liste_titre_bydiv .divsearchfield {
	padding: 2px 1px 2px 7px;			/* t r b l */
}

tr.box_titre .nobordernopadding td {
	padding: 0 ! important;
}
table.nobordernopadding {
	border-collapse: collapse !important;
	border: 0;
}
table.nobordernopadding tr {
	border: 0 !important;
	padding: 0 0 !important;
}
table.nobordernopadding tr td {
	border: 0 !important;
	padding: 0 3px 0 0;
}
table.border tr td table.nobordernopadding tr td {
	padding-top: 0;
	padding-bottom: 0;
}
td.borderright {
 border: none;	/* to erase value for table.nobordernopadding td */
	border-right-width: 1px !important;
	border-right-color: #BBB !important;
	border-right-style: solid !important;
}


/* For table with no filter before */
table.listwithfilterbefore {
	border-top: none !important;
}


.tagtable, .table-border { display: table; }
.tagtr, .table-border-row { display: table-row; }
.tagtd, .table-border-col, .table-key-border-col, .table-val-border-col { display: table-cell; }


/* Pagination */
div.refidpadding {
	padding-top: 3px;
}
div.refid {
	font-weight: bold;
 	color: #625;
 	font-size: 160%;
}
div.refidno {
	padding-top: 3px;
	font-weight: normal;
 	color: #444;
 	font-size: 13px;
 	line-height: 21px;
}
div.refidno form {
 display: inline-block;
}

div.pagination {
	float: right;
}
div.pagination a {
	font-weight: normal;
}
div.pagination ul
{
 list-style: none;
 display: inline-block;
 padding-left: 0px;
 padding-right: 0px;
 margin: 0;
}
div.pagination li {
 display: inline-block;
 padding-left: 0px;
 padding-right: 0px;
 padding-top: 6px;
 padding-bottom: 5px;
}
.pagination {
 display: inline-block;
 padding-left: 0;
 border-radius: 4px;
}
div.pagination li.pagination a,
div.pagination li.pagination span {
 padding: 6px 12px;
 line-height: 1.42857143;
 color: #000;
 text-decoration: none;
 background-repeat: repeat-x;
}
div.pagination li.pagination span.inactive {
 cursor: default;
 color: #ccc;
}
li.noborder.litext, li.noborder.litext a,
div.pagination li a.inactive:hover,
div.pagination li span.inactive:hover {
 	-webkit-box-shadow: none !important;
 	box-shadow: none !important;
}
/*div.pagination li.litext {
	padding-top: 8px;
}*/
div.pagination li.litext a {
 border: none;
 padding-right: 10px;
 padding-left: 4px;
 font-weight: bold;
}
div.pagination li.litext a:hover {
	background-color: transparent;
	background-image: none;
}
div.pagination li.litext a:hover {
	background-color: transparent;
	background-image: none;
}
div.pagination li.noborder a:hover {
 border: none;
 background-color: transparent;
}
div.pagination li a,
div.pagination li span {
 /* background-color: #fff; */
 /* border: 1px solid #ddd; */
}
div.pagination li:first-child a,
div.pagination li:first-child span {
 margin-left: 0;
 border-top-left-radius: 4px;
 border-bottom-left-radius: 4px;
}
div.pagination li:last-child a,
div.pagination li:last-child span {
 border-top-right-radius: 4px;
 border-bottom-right-radius: 4px;
}
div.pagination li a:hover,
div.pagination li span:hover,
div.pagination li a:focus,
div.pagination li span:focus {
 -webkit-box-shadow: 0px 0px 6px 1px rgba(50, 50, 50, 0.4), 0px 0px 0px rgba(60,60,60,0.1);
 box-shadow: 0px 0px 6px 1px rgba(50, 50, 50, 0.4), 0px 0px 0px rgba(60,60,60,0.1);
	padding-top: 8px;
}
div.pagination li .active a,
div.pagination li .active span,
div.pagination li .active a:hover,
div.pagination li .active span:hover,
div.pagination li .active a:focus,
div.pagination li .active span:focus {
 z-index: 2;
 color: #fff;
 cursor: default;
 background-color: rgb(121,97,170);
 border-color: #337ab7;
}
div.pagination .disabled span,
div.pagination .disabled span:hover,
div.pagination .disabled span:focus,
div.pagination .disabled a,
div.pagination .disabled a:hover,
div.pagination .disabled a:focus {
 color: #777;
 cursor: not-allowed;
 background-color: #fff;
 border-color: #ddd;
}
div.pagination li.pagination .active {
 text-decoration: underline;
 box-shadow: none;
}
.paginationafterarrows .nohover {
 box-shadow: none !important;
}

div.pagination li.paginationafterarrows {
	margin-left: 10px;
}
.paginationatbottom {
	margin-top: 9px;
}




/* Set the color for hover lines */
.oddeven:hover, .evenodd:hover, .impair:hover, .pair:hover
{
}
.nohover:hover {
	background: unset;
}
.oddeven, .evenodd, .impair, .nohover .impair:hover, tr.impair td.nohover
{
	font-family: roboto,arial,tahoma,verdana,helvetica;
	margin-bottom: 1px;
	color: #202020;
}
.impair, .nohover .impair:hover, tr.impair td.nohover
{
	background: #ffffff;
}
#GanttChartDIV {
	background-color: #ffffff;
}

.oddeven, .evenodd, .pair, .nohover .pair:hover, tr.pair td.nohover {
	font-family: roboto,arial,tahoma,verdana,helvetica;
	margin-bottom: 1px;
	color: #202020;
}
.pair, .nohover .pair:hover, tr.pair td.nohover {
	background-color: #f8f8f8;
}

table.dataTable tr.oddeven {
	background-color: #f8f8f8 !important;
}

/* For no hover style */
td.oddeven, table.nohover tr.impair, table.nohover tr.pair, table.nohover tr.impair td, table.nohover tr.pair td, tr.nohover td, form.nohover, form.nohover:hover {
	background-color: #ffffff !important;
	background: #ffffff !important;
}
td.evenodd, tr.nohoverpair td {
	background-color: #f8f8f8 !important;
	background: #f8f8f8 !important;
}
.trforbreak td {
	background-color: #d6dadc !important;
}

table.dataTable td {
 padding: 5px 8px 5px 8px !important;
}
tr.pair td, tr.impair td, form.impair div.tagtd, form.pair div.tagtd, div.impair div.tagtd, div.pair div.tagtd, div.liste_titre div.tagtd {
 padding: 7px 8px 7px 8px;
 border-bottom: 1px solid #ddd;
}
form.pair, form.impair {
	font-weight: normal;
}
form.tagtr:last-of-type div.tagtd, tr.pair:last-of-type td, tr.impair:last-of-type td {
 border-bottom: 0px !important;
}
tr.pair td .nobordernopadding tr td, tr.impair td .nobordernopadding tr td {
 border-bottom: 0px !important;
}
tr.nobottom td, tr.nobottom , td.nobottom {
 border-bottom: 0px !important;
}
div.liste_titre .tagtd {
	vertical-align: middle;
}
div.liste_titre {
	min-height: 26px !important;	/* We cant use height because it's a div and it should be higher if content is more. but min-height does not work either for div */

	padding-top: 2px;
	padding-bottom: 2px;
}
div.liste_titre_bydiv {
	border-top-width: 2px;
 border-top-color: rgb(121,97,170);
 border-top-style: solid;

	border-collapse: collapse;
	display: table;
	padding: 2px 0px 2px 0;
	box-shadow: none;
	/*width: calc(100% - 1px);	1px more, i don't know why so i remove */
	width: calc(100%);
}
tr.liste_titre, tr.liste_titre_sel, form.liste_titre, form.liste_titre_sel, table.dataTable.tr
{
	height: 26px !important;
}
div.colorback
{
	background: rgb(177,155,201);
	padding: 10px;
	margin-top: 5px;
}
div.liste_titre_bydiv, .liste_titre div.tagtr, tr.liste_titre, tr.liste_titre_sel, form.liste_titre, form.liste_titre_sel, table.dataTable thead tr
{
	background: rgb(177,155,201);
	font-weight: bold;
 border-bottom: 1px solid #ddd;

 color: rgb(0,0,0);
 font-family: roboto,arial,tahoma,verdana,helvetica;
 text-align: left;
}
tr.liste_titre th, tr.liste_titre td, th.liste_titre
{
	border-bottom: 1px solid #888;
}
tr.liste_titre:first-child th, tr:first-child th.liste_titre {
 border-bottom: 1px solid #ddd ! important;
}
tr.liste_titre th, th.liste_titre, tr.liste_titre td, td.liste_titre, form.liste_titre div
{
 font-family: roboto,arial,tahoma,verdana,helvetica;
 font-weight: bold;
 vertical-align: middle;
 height: 24px;
}
tr.liste_titre th a, th.liste_titre a, tr.liste_titre td a, td.liste_titre a, form.liste_titre div a, div.liste_titre a {
	text-shadow: none !important;
}
tr.liste_titre_topborder td {
	border-top-width: 2px;
 border-top-color: rgb(121,97,170);
 border-top-style: solid;
}
.liste_titre td a {
	text-shadow: none !important;
	color: rgb(0,0,0);
}
.liste_titre td a.notasortlink {
	color: rgb(0,0,100);
}
.liste_titre td a.notasortlink:hover {
	background: transparent;
}
tr.liste_titre:last-child th.