/**
/** GENERAL
/**/
html, body {
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	-webkit-touch-callout: none; /* iOS Safari */
	-webkit-user-select: none;   /* Chrome/Safari/Opera */
	-khtml-user-select: none;    /* Konqueror */
	-moz-user-select: none;      /* Firefox */
	-ms-user-select: none;       /* Internet Explorer/Edge */
	user-select: none;
}

body {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	background-color: #ffffff;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	letter-spacing: 0em;
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:    #888888;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:    #888888;
   opacity:  1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:    #888888;
   opacity:  1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
   color:    #888888;
}

p  { font-style: normal; }

input, select { font-family: Verdana, Arial, Helvetica, sans-serif; }

div#div_app {
	display: flex;
	flex-flow: column nowrap;
	width: 100%;
	height: 100%;
	background: #E9E9E9;
	z-index: 1;
	box-shadow:  5px 0  5px -5px rgba(0, 0, 0, 0.6),
				-5px 0  5px -5px rgba(0, 0, 0, 0.6);
}

/**
/** HEADER
/**/
div#div_header {
	flex-shrink: 0;
	background-color: #E0E0E0;
	padding: 0;
}

div#div_headerTop {
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
}

div#div_menu {
	flex-shrink: 0;
	width: calc(100% - 10px);
	margin-left: 10px;
}

div#div_logo {
	padding: 10px 0 10px 10px;
	margin-right: 25px;
}
div#div_logo > a {
	cursor: unset; /* Logo is no more a link */
}

select#select_language {
	margin-left: 15px;
	margin-top: -3px;
	margin-bottom: -4px;
}
li#li_language {
	background-color: inherit;
}

img#img_headerLogo {
	max-height: 40px;
}

/**
/** CONTENT
/**/
div#div_contentHeader {
	display: flex;
	border-bottom: 1px solid rgba(0,0,0,0.2);
}
div#div_content {
	flex-grow: 1;
	display: flex;
	flex-flow: column nowrap;
	overflow: hidden;
}

div#div_table {
	flex-grow: 1;
	flex-shrink: 1;
	display: flex;
	flex-flow: row nowrap;
	white-space: nowrap;
	overflow: hidden;
}

div#div_tableFolder {
	flex-grow: 1;
	display: flex;
	flex-flow: column nowrap;
	white-space: nowrap;
	overflow: auto;
}

span.tableTitleName { font-size: 120%; }

div#div_tableTitle {
	width: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	border-bottom: 1px solid rgba(0,0,0,0.2);
	border-top: 1px solid rgba(0,0,0,0.2);
	z-index: 2;
}
div#div_tableTitle > span {
	font-style: normal;
	font-size: 1em;
	color: #777777;
}

img.tableTitle {
	height: 15px;
	margin-right: 15px;
}

div#div_tableFilters {
	display: flex;
	flex-flow: row nowrap;
	white-space: nowrap;
	background-color: #E0E0E0;
	align-items: center;
	justify-content: flex-start;
}
div#div_tableFilters #div_linesSelect {
	margin-left: 35px;
	margin-right: 25px;
}

.flex_right{
	flex-grow: 1;
	justify-content: flex-end;
	text-align: right;
}
.flex_left{
	display: flex;
	flex:1;
	justify-content: flex-start;
}
.float_right{
	float: right;
}
.float_left{
	float: left;
}
div#div_tableFilters label {
	/*padding-bottom: 6px;*/
	display: inline-block;
}
div#div_tableFilters label.checkbox {
	padding-bottom: 6px;
}
div#div_tableFilters .modern-checkbox,
div#div_tableFilters .modern-radio{
	margin-left: 35px;
}
div#div_linesSelect.active { background-color: #B8D9FF; position: relative; }

.inputSearchContainer{
	position: relative;
	display: inline-block;
	margin-bottom: 0;
}
span#span_search {
	position: absolute;
	top: 6px;
	right: 10px;
	opacity: 0;
	cursor: default;
	color: #888888;
}
span#span_search:hover {
	color: #CC2714;
}
span#span_search.active {
	opacity: 1;
	cursor: pointer;
}
#input_search::-ms-clear {	/* IE: no X to clear input text */
    display: none;
}
#input_search{
	padding-right: 30px;
	padding-left: 35px;
}
.inputSearchContainer:before{
	content: '';
	position: absolute;
	top: 6px;
	left: 6px;
	background-image: url('../images/icons/buttons_sprite.png');
	background-repeat: no-repeat;
	background-position: 0 -1128px; /* filter-blue: 0 -1128px, filter-gray: -24px -1128px */
	width: 24px;
	height: 24px;
	display: inline-block;
	margin-bottom: -1px;
	overflow:hidden;
	text-align: center;	
	transform: scale(0.7, 0.7);
}

div#div_tableHeader {
	flex-shrink: 0;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
}
div#div_tableFooter {
	flex-shrink: 0;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	/*padding: 10px;*/
	border-top: 1px solid rgba(0,0,0,0.2);
}

div#div_tableFooter > div.buttons_container{
	padding: 10px;
}

div#div_total {
	flex-grow: 1;
	text-align: right;
	white-space: nowrap;
	overflow: hidden;
	font-size: .85em;
	color: #444444;
	padding-right: 5px;
}

/**
/** Waiting animated symbol
/**/
#div_waitingBarsContainer {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}

#div_waitingBars {
	display: flex;
	width: 150px;
	height: 160px;
	z-index: 20;
}

.waitBlock{
	position: relative;
	background-color:rgba(20, 120, 200, 0.9);
	width:18px;
	height:42px;
	border-radius:14px 14px 0 0;
	transform:scale(0.4);
	animation-name:fadeG;
	animation-duration:0.572s;
	animation-iteration-count:infinite;
	animation-direction:normal;
}

#wait_block1 {
	left: 11px;
	top: 61px;
	animation-delay:0.2095s;
	transform:rotate(-90deg);
}
#wait_block2 {
	left: 11px;
	top: 16px;
	animation-delay:0.286s;
	transform:rotate(-45deg);
}
#wait_block3 {
	left: 31px;
	top: 0px;
	animation-delay:0.3525s;
	transform:rotate(0deg);
}
#wait_block4 {
	left: 51px;
	top: 16px;
	animation-delay:0.429s;
	transform:rotate(45deg);
}
#wait_block5 {
	left: 48px;
	top: 61px;
	animation-delay:0.4955s;
	transform:rotate(90deg);
}
#wait_block6 {
	left: 18px;
	top: 102px;
	animation-delay:0.572s;
	transform:rotate(135deg);
}

#wait_block7 {
	left: -41px;
	top: 117px;
	animation-delay:0.6385s;
	transform:rotate(180deg);
}
#wait_block8 {
	left: -98px;
	top: 100px;
	animation-delay:0.715s;
	transform:rotate(-135deg);
}

@keyframes fadeG{
	0%{ background-color:rgba(20, 100, 200, 0.9); }
	100%{ background-color:rgba(15, 120, 120, 0.5); }
}

/**
/** CHECKBOX
/**/
div.formContent div input[type="checkbox"],
table#table_publish input[type="checkbox"],
div#div_tableFilters input[type="checkbox"]  {
    display: none;			/* Hide std checkbox */
}

div.formContent div input[type="checkbox"] + label ,
table#table_publish input[type="checkbox"] + label,
div#div_tableFilters   input[type="checkbox"] + label {
	cursor: pointer;
	min-width: unset;
}

div#div_tableFilters label + label {
	margin-left: 16px;
	font-size: 90%;
}
table#table_publish  label + label {
	margin-left: 22px;
}

div.formContent div input[type="checkbox"] + label::before,
table#table_publish input[type="checkbox"] + label::before,
div#div_tableFilters   input[type="checkbox"]  + label::before {	/* Box around */
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    margin-top: -16px;
    border: 2px solid gray;
    border-radius: 2px;
	background-color: white;
	z-index: 1;	/* IE bug that does not display if not set */
}
div#div_tableFilters   input[type="checkbox"]  + label::before {
	margin-top: -10px;
}
table#table_publish input[type="checkbox"] + label::before {
	margin-top:	2px;
}

div.formContent div input[type="checkbox"] + label::after,
table#table_publish input[type="checkbox"] + label::after,
div#div_tableFilters   input[type="checkbox"] + label::after {	/* Check mark */
    content: '';
    position: absolute;
	margin-left: 6px;
    margin-top: -14px;
    width: 5px;
    height: 10px;
	border: 3px solid green;
	border-top: 0;
    border-left: 0;
	transform: rotate(45deg);
    opacity: 0;
	z-index: 1;	/* IE bug that does not display if not set */
}
div#div_tableFilters   input[type="checkbox"] + label::after {
    margin-top: -9px;
}
table#table_publish input[type="checkbox"] + label::after {
	margin-top:	3px;
}

div.formContent div input[type="checkbox"]:checked + label::after,
table#table_publish input[type="checkbox"]:checked + label::after,
div#div_tableFilters   input[type="checkbox"]:checked + label::after {
	opacity: 1;				/* When checked */
}

div.formContent div input[type="checkbox"]:disabled + label::before,
div.formContent div input[type="checkbox"]:disabled + label::after {
	background-color: lightgray;
}

input[type="checkbox"].styledCheckbox {
	display: none;
}
input[type="checkbox"].styledCheckbox + label{
	cursor: pointer;
	min-width: unset;
}
input[type="checkbox"].styledCheckbox + label:before{ /* Box around */
	content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    margin-top: -10px;
    border: 2px solid gray;
    border-radius: 2px;
	background-color: white;
	z-index: 1;
}
input[type="checkbox"].styledCheckbox + label:after{	/* Check mark */
    content: '';
    position: absolute;
	margin-left: 6px;
    margin-top: -8px;
    width: 5px;
    height: 10px;
	border: 3px solid green;
	border-top: 0;
    border-left: 0;
	transform: rotate(45deg);
    opacity: 0;
	z-index: 1;
}
input[type="checkbox"].styledCheckbox:checked + label:after {
	opacity: 1;
}
/**
/** FOOTER
/**/
div#div_footer {
	flex-shrink: 0;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items: center;
	background-color: #E0E0E0;
	padding: 10px 5px;
	border-top: 1px solid rgba(0,0,0,0.2);
	z-index: 2;
}

div#div_footerCopyright { overflow: hidden; }
div#div_footerCopyright > p {
	font-style: italic;
	font-size: 90%;
	margin: 0;
	padding: 0 10px 0 0;
	text-align: left;
	white-space: nowrap;
}

div#div_news {
	background-color: #DDDDDD;
	border-radius: 5px;
	overflow: hidden;
	white-space: nowrap;
	/*height: 2.4em;*/
}
div#div_news > p {
	font-size: 70%;
	letter-spacing: 0.05em;
	margin: 0;
	/*padding: 10px;*/
	overflow: hidden;
	text-overflow: ellipsis;
}

div#div_user { overflow: hidden; }

p#p_user {
	font-size: 80%;
	letter-spacing: 0.05em;
	margin: 0;
	padding: 0 0 0 10px;
	white-space: nowrap;
}

div#div_connect {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	margin: 0;
	padding: 7px 0 7px 10px;
	overflow: hidden;
}

/**
/** PUBLISH window
/**/
p#p_publishStatus { color: black; }
p#p_publishStatus.err { color: #C81818; }

/**
/** REMINDER window
/**/
p#p_remindStatus div {
	display: block;
	overflow: auto;
	max-height: 200px;
	font-size: 70%;
}
p#p_remindStatus div p.user {
	margin: 20px 0 0 0;
	font-weight: bolder;
}
p#p_remindStatus div p.case { margin: 10px 0 0 0; }
p#p_remindStatus div p.machine { margin: 0 0 0 20px; }

/* BREADCRUMBS */
.breadcrumb {
	overflow: hidden;
	-webkit-touch-callout: none; /* iOS Safari */
	-webkit-user-select: none;   /* Chrome/Safari/Opera */
	-khtml-user-select: none;    /* Konqueror */
	-moz-user-select: none;      /* Firefox */
	-ms-user-select: none;       /* Internet Explorer/Edge */
	user-select: none;
}

.breadcrumb a {
	text-decoration: none;
	outline: none;
	display: block;
	float: left;
	font-size: .9em;
	line-height: 36px;
	padding: 0 10px 0 30px;
	position: relative;
	background: #D4D4D4;
	cursor: default;
}
/*since the first link does not have a triangle before it we can reduce the left padding to make it look consistent with other links*/
.breadcrumb a:first-child {
	padding-left: 15px;
}
/*adding the arrows for the breadcrumbs using rotated pseudo elements*/
.breadcrumb a:after {
	content: '';
	position: absolute;
	top: 0;
	right: -18px; /*half of square's length*/
	width: 36px;
	height: 36px;
	transform: scale(0.707) rotate(45deg);
	z-index: 1;
	background: #D4D4D4;
	box-shadow: 1px -1px 0 1px rgba(0,0,0,0.2),
		1px -1px 0 1px rgba(255, 255, 255, 0.1);
	border-radius: 0 5px 0 50px;
}
.flat a, .flat a:after {
	color: #777777;
	transition: all 0.25s;
}
.flat a:last-child,
.flat a:last-child:after {
	color: #333333;
	background: #c1c1c1;
}
.flat a:hover, .flat a.active,
.flat a:hover:after, .flat a.active:after{
	background: #DEDEDE;
	cursor: pointer;
}
.flat a:last-child:hover, .flat a.active:last-child,
.flat a:last-child:hover:after, .flat a.active:last-child:after{
	background-color: #c1c1c1;
	cursor: default;
}

/* INPUTS */
input, select{
	border: 1px solid rgba(0,0,0,0.2);
	border-radius: 2px;
	outline: 0;
	font-size: 90%;
}
input{
	padding: 7px 9px 8px 9px;
}
select{
	padding: 6px 8px 7px 8px;
}
input:hover,
input:focus,
select:hover,
select:focus{
	border: 1px solid rgba(0,0,0,0.5);
}
input[disabled],
input.disabled,
select[disabled],
select.disabled{
	opacity: 0.75;
	filter: alpha(opacity=75);
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #888888;
	background-color: #e6e6e6;
}
input[disabled]:hover,
input.disabled:hover,
select[disabled]:hover,
select.disabled:hover{
	border: 1px solid rgba(0,0,0,0.2);
}

.btn-group-label{
	text-align: center;
	font-family: Helvetica, Verdana, Arial, sans-serif;
	font-size: .8em;
	text-transform: uppercase;
	color: #aaaaaa;
	font-weight: bold;
	margin-top: 10px;
	margin-left: auto;
	margin-right: auto;
}
.btn-group-container > div{
	display: flex;
	justify-content: center;
}
.btn-group-container{
	display:flex; flex-direction: column;
	border-right: 1px solid rgba(0,0,0,0.2);
	/*padding: 0 5px 0 10px;*/
	padding: 10px 5px 10px 10px;
}
.btn-group-container.last-btn-group-container{
	border-right: none;
	width: auto;
}

#error_searchForm{
	width: 100%;
	text-align: center;
}
.error {
	color: red;
}

.readerSearchBtn{
	margin-right: 20px;
}

.hide{
	display: none !important;
}

.hasCut { opacity: 0.4; }

@media screen and (min-width: 0px) and  (max-width: 1200px) {
	div#div_tableFilters #div_linesSelect {
		margin-left: 10px;
		margin-right: 10px;
	}

	input#input_search{
		max-width: 145px;
	}
}