/* CSS */

/****************/
/**** Basics ****/
/****************/
html {
	padding:0 0 0 0;
	margin:0 0 0 0;	
}
body {
	padding:0 0 0 0;
	margin:0 0 0 0;
	font-family: 'Source Sans Pro', sans-serif;
	font-size:1em;
	color:#2b2b2a;
	background:#9f9d9c;
}

a.helpBox, a.helpBox:hover, a.helpBox:visited, a.helpBox:active {
	color:#fff;
	/*text-decoration:none;*/
}

h2 {
	font-size:1.3em;
	color:#d7805d;
}

td {
	overflow:hidden;
}

/***************/
/**** Forms ****/
/***************/

input[type=text], input[type=password], input[type=number], select, textarea {
	width:93%;
	border:#9f9d9c 1px solid;
	background:#fff;
}
/* Hide number arrows */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type=number] {
	-moz-appearance: textfield;
}

input[type=text].ng-invalid, input[type=password].ng-invalid, select.ng-invalid, textarea.ng-invalid {
	/*-moz-box-shadow: 0px 0px 2px 2px #d7805d;
	-webkit-box-shadow: 0px 0px 2px 2px #d7805d;
	box-shadow: 0px 0px 2px 2px #d7805d;*/
	box-shadow:none;
	border:#d7805d 2px solid;
}

select[multiple] {
	resize: both;
}

textarea {
	height:80px;
}

textarea:focus {
	position:relative;
	z-index:999;
}

.ng-pristine {
	box-shadow:none;
}

/** iQual color #f5da76  replaced with convadis C3D9FF **/
input[type=submit], input[type=reset] {
	border:none;
	background:#c3d9ff;
	cursor:pointer;
	padding:0 5%;
	font-size:1.2em;
}

.fieldDetail {
	background: #faf9f9;
	border:3px solid #9f9d9c;
	padding:0 0 5px 0;
	position:absolute;
	width:150%;
	z-index:1;
	margin-left:-50%;
	box-shadow: 1px -1px 1px #888;
}

.fieldDetail .header {
	padding: 3px 1% !important;
	font-size: 1.5em !important;
	line-height: 1em !important;
	background: #c3d9ff !important;
	margin-bottom: 5px !important;
	height:auto !important;
}

.fieldDetail label {
	width:11% !important;
}

.fieldDetail .field {
	width:89% !important;	
}

.fieldDetail .helpBox {
	position:absolute;
	width:150%;
	z-index:100;
	background:#9f9d9c;
	box-shadow:0 1px 3px 3px #9f9d9c;
	color:#faf9f9;
	font-family:Times, serif;
	margin-left:-50%
}

.fieldDetail .extHelp {
	width:3% !important;
	display:inline-block;
	float:right;
	margin-right: 2px;
	cursor:pointer;
}

.fieldDetail .help {
	float:none !important;
	display:inline-block;
	width:89% !important;
}

.fieldDetail input {
	vertical-align: top;
}


/****************/
/**** Header ****/
/****************/
header {
	background:#fff;
}

header .left {
	width:40%;
	float:left;
}

header .info {
	width:59%;
	display:inline-block;
	text-align:right;
	float: right;
}

header .info div {
	padding-top:4px;
	text-align:right;
}

header .info button {
	background:#000;
	color:#fff;
	font-size:1em;
}

/********************/
/**** Navigation ****/
/********************/
header .viewGroups ul {
	margin:0;
	padding:0;
	list-style:none;

}

header .viewGroups ul li {
	float:left;
	width:auto;
	padding:5px;
	margin-right:5px;
	background:#c3d9ff;
	font-size:1.3em;
}

nav {
	background:#fff;
	position:relative;
}
nav .container {
	height:40px;
	width:100%;
	overflow:hidden;
}

nav ul {
	margin:0;
	padding:0;
	list-style:none;
	width:10000%;
}

nav li {
	float:left;
	width:auto;
	padding:5px;
	margin-right:5px;
	background:#9f9d9c;
	box-shadow: 1px -1px 1px #888;
	cursor: pointer;
}

nav li.active {
	margin-bottom:0;
	padding-bottom:15px;
}

nav li.extra {
	background:#c3d9ff;
	box-shadow:none;
}

nav li div {
	color:#fff;
	font-size:1.2em;
}

.shiftNav {
	position:absolute;
	font-size:1.2em;
	color:#fff;
	padding:5px;
	top:0;
	height:inherit;
	background:#9f9d9c;
	text-align:center;
}

.shiftNav.left {
	left:0;
	width:4%;
}

.shiftNav.right {
	right:0;
	width:4%;
}

/*****************/
/**** Content ****/
/*****************/
.content {
	background:#fbfaff;
	min-height:900px;
}

/***************/
/**** Login ****/
/***************/
.login {
	width:40%;
	margin:20px auto;
	padding:2%;
	border:1px solid #000;
}

.login > div {
	
}

.login .field {
	display:inline-block;
	width:65%;
	height:30px;
	margin-bottom:5px;
}

.login label {
	width:35%;
	display:inline-block;
	float:left;
}

.login .submit {
	text-align:right;
}


/***********************/
/**** Organisations ****/
/***********************/

.organisation {
	width:30%;
	margin:20px auto;
	padding:2%;
	border:1px solid #000;
}

.organisation > div {
	
}

.organisation .field {
	display:inline-block;
	width:100%;
	margin-bottom:25px;
}

.organisation label {
	width:35%;
	display:inline-block;
	float:left;
}

.organisation .field select {
	width:100%;
	border:#9f9d9c 1px solid;
	background:#fff;
}

.organisation .submit {
	text-align:right;
}

/**************/
/**** View ****/
/**************/

button {
	border:none;
	background:#c3d9ff;
	padding:0 3%;
	font-size:1.2em;
	cursor:pointer;
}

button.big {
	padding:0 5%;
	font-size:1.2em;
	height:45px;
}

/** Search **/
.view {
	width:100%;
}

.search {
	width:98%;
	padding:1px 1%;
	background:#9f9d9c;
	min-height:200px;
}

.search .box > div {
	margin-bottom:5px;
}
.search .box > div > div {
	min-height:80px;
}

.search .box label {
	width:30%;
	display:inline-block;
	float:left;
}

.search .box input, .search .box select {
	margin-bottom:3px;
}

.search .box .help, .fieldDetail .help {
	font-size:0.8em;
	width: 93%;
	display: inline-block;
}

.search .field, .fieldDetail .field {
	display:inline-block;
	width:65%;
	position:relative;
}

/** Simple Search **/
.simple {
	margin: 20px auto;
}

.simple .box {
	width:30.6%;
	margin-right:1%;
	background:#fff;
	float:left;
	padding:10px;
}

.simple .box.last {
	margin-right:0;
}

.simple .formGroupHeader {
	padding: 10px;
	background-color: #fcf2d7;
	margin-top: 3%;
	margin-bottom: 1%;
}

/** Extended Search **/

/** Execute **/
.execute {
	background:#9f9d9c;
	width:98%;
	padding:1%;
	line-height:40px;
}

.execute.result {
	background:#9f9d9c;
	position:relative;
	width:98%;
	padding:0 1%;
	line-height:40px;	
	height:40px;
}

.execute.fixed {
	position:fixed;
	bottom:0;
	z-index:1;
}

.execute .filler {
	width:67.4%;
	float:left;
	display:inline-block;
	height:inherit;
	line-height:inherit;
	background:#9f9d9c;
	margin-left:-1%;
	margin-right:1%;
}

.execute.result .filler {
	width:67.4%;
	float:left;
	display:inline-block;
	height:inherit;
	margin-left:-1%;
	line-height:40px;
	background:#9f9d9c;
	margin-right:1%;
}

.execute .filler > div.up {
	font-size:40px;
	color:#faf9f9;
	height:40px;
	line-height:inherit;
	margin-left:73%;
	display:block;
	margin-top:-5px;
}

.execute.result .filler > div.up {
	display:none;
}

.execute .filler > div.down {
	display:none;
}

.execute.result .filler > div.down {
	font-size:40px;
	color:#faf9f9;
	height:40px;
	line-height:32px;
	margin-left:73%;
	display:block;
}

.execute .filler > div span {
	cursor:pointer;
}

.execute .buttons {
	text-align:right;
	width:32.6%;
	display:inline-block;
}

.execute.result .buttons input {
	display:none;
} 

.execute .buttons * {
	border:none;
	background:#c3d9ff;
	width:48%;
	margin-right:1%;
	padding:0 3%;
	font-size:1.2em;
	height:35px;
	cursor:pointer;
}

/** Data **/
.data {
	position:relative;
	z-index:2;
}

/** Results **/
.result {
	background:#fbfafa;
	padding:1%;
	width:98%;
}

.result .header {
	padding-bottom:10px;
}

.result .header .leftGroup {
	float:left;
	width:50%;
}

.result .header .rightGroup {
	width:50%;
	display:inline-block;
	text-align:right;
}

.result .header .rightGroup button {
	background:#9f9d9c;
	color:#fff;
}

.result .header .numbers {
	font-size:1.2em;
	line-height:30px;
	padding-top:5px;
    vertical-align: top;
    width:100%;
    background:#fbfafa;
}

.result .header .functions {
	position: absolute; 
	z-index: 500; 
	right: 1%; 
	width: 250px;
	background:#faf9f9;	
}

.result .header .functions .function {
	text-align:center;
	background:#9f9d9c;
	padding:3px 0;
	margin:10px 0;
	font-size:1em;
	color:#fff;
	overflow:hidden;
	cursor:pointer;	
}

.result .table {
	position:relative;
	overflow-x: scroll;
}

.result table {
	width:100%;
	border:none;
	border-spacing: 0;
}

.result thead {
	background:#c3d9ff;
}

.result thead th {
	height:38px;
	font-size:1.1em;
	padding:0 5px;
	text-align: left;
	line-height:38px;
}

.result thead th div.label.d {
	display:inline-block;
		
}

.result thead th div.date {
	display: inline-block;
}

.result thead th svg {
	vertical-align:text-top;	
}

.result tbody {
	background:#ece9e9;
	border-right:1px solid #000000;	
}

.result tbody td {
	max-width:500px;
	border-bottom:1px solid #fff;
	word-break: break-all;
}
.result tbody tr:last-child td {
	border-bottom:none;
}

.result tr.selected {
	background:#fcf2d7;
}

.result th, .result td {
	border-left: 1px solid #000;
	word-wrap:break-word;
}
.result th:first-child, .result td:first-child {
	border-left:none;
}

.result tbody tr td > div {
	width:100%;
	height:100%;
}

.result tbody td > div div {
	padding:2px 5px;
}

.result tfoot tr td {
	font-size:50px;
	height:70px;
	line-height:60px;
	cursor:pointer;
	background:#fcf2d7;
}

.result tfoot tr td {
	background:#ece9e9;
}

.result .order {
	 fill:#000000 !important;
}

.result table.fixedTableHeader {
	position: fixed;
	table-layout: fixed;
}

/** overlay **/
.overlay {
	background: rgba(250, 249, 249, 1);
	margin-top:20px;
}

.content table {
	width:100%;
	border:none;
	border-spacing: 0;
}

.overlay > div.content {
	padding:1%;
	/*background: rgba(159, 157, 156, 1);*/
}

.overlay table td {
	padding:0;
}

/** Details **/
.details .objects {
	background:#c3d9ff;
	font-size:1.1em;
}

.details .objects > td {
	border-right:1px solid #000000;
	height:30px;
	line-height:30px;
	padding:0 5px;
}

.details .objects > td:first-child {
	width:20%;
}

.details .objects > td:last-child {
	border-right:none;
}

.details .group_row > td {
	border-bottom: 1px solid #fff;
	border-right:1px solid #000000;
	height:30px;
	font-style:italic;
	padding:0 5px;
}

.details .group_row > td:first-child {
	width:20%;
	cursor:pointer;
}

.details .group_row > td:last-child {
	border-right:none;
}

.details .group {
	background:#fcf2d7;
	padding:0;
	overflow:visible;
}

.details .field > td, .details .value > td {
	overflow: visible;
	word-break: break-all;
}
.helpBox {
	word-break: break-word;
}

.details .field_row {
	padding-left:20px;
	cursor:pointer;
	position: relative;
}

.details .field_row table td.field_expander {
	width:10%;
}

.details .field_row table td.field_expander div {
	background:#9f9d9c;
	color:#faf9f9;
	display:inline-block;
	height: 50%;
	line-height: 99%;
	box-shadow: 0 0 0 0 #000000 !important;
	width: 15px;	
}

.details .field_row table td.field_expander div div {
	text-align:center;	
}

.details .field_row .extHelp {
	position: absolute;
	height: 50%;
	line-height: 120%;
	right: 5%;
	top: 25%;
	box-shadow: 0 0 0 0 #000000 !important;
	width: 15px;
}

.details .field_row .helpBox {
	width:200%;
	background:#9f9d9c;
	position: relative;
	z-index: 1;
	color:#faf9f9;
}

.details .field_row .helpBox div {
	padding:0 1%;
}

.details .field {
	background:#e8e8e8;
}

.details .field > td {
	border-bottom: 1px solid #fff;
	border-right:1px solid #000000;
	height:30px;
	vertical-align:middle;
}

.details .field > td:first-child {
	width:20%;
}

.details .field > td:last-child {
	border-right:none;
}

.details .value {
	background:#e8e8e8;
	
}

.details .title > td {
	height:30px;
	padding: 0 5px;
	position:relative;
	box-shadow: 0 -1px 0 0 #fff;
	font-style:italic;
}

.details .value > td > div > div{
	padding-left: 5px;
}

.details .value > td > div > div.tValue {
	width:inherit;
	height:30px;
	line-height:30px;
	box-shadow: 0 -1px 0 0 #fff;
}

.details .result {
	padding: 0;
	width: 98vw;
	overflow: auto;
}
.details .result tbody td {
	word-break: normal;
}

/** Edit/Create **/
.form .header {
	height:30px;
	background: #c3d9ff;
	font-size:1.1em;
	line-height:30px;
	padding-left:15px;
	vertical-align: middle;
}

.form .search {
	background: #e8e8e8;
}

.form .buttons {
	text-align:right;
	margin-top:20px;
}

/** Errors **/
.error {
	color:#faf9f9;
}

.error .header {
	line-height:60px;
	font-size:3em;
	padding:0 1%;
	font-weight:bold;
	font-family:Times, serif;
	margin:-1% -1% 20px;
}

.error .header.critical {
	background:#d7805d;
}

.error .header.warning {
	background:#c3d9ff;
}

.error .generic {
	float:left;
	margin-right:1%;
	width:48%;
	height:250px;
}

.error .info {
	width:100%;
	padding-top:25px;
	height:250px;
}

/** About **/
.about {
	position:relative;
	z-index: 30;
}

.about div {
	text-align: left !important;	
}

.about > div {
	position:absolute;
	right:0;
	width:100%;
	background:#e8e8e8;
	border:1px solid #2b2b2a;
}

.about > div.help {
	width:95vw;
}
	
.about .header {
	background: #c3d9ff;
	font-size: 1.3em;
	line-height: 1.3em;
	padding: 1%;
	width:98%;
}

.about .info {	
	padding: 1%;
	width:98%;
}

.about .info label {
	font-weight:bold;
}

.about a, .about a:hover, .about a:active, .about a:visited {
	color:#2b2b2a;
}

/** Loading Icon **/
.loading {
	position:fixed;
	top:49%;
	left:49%;
	width:1%;
	height:1%;
	text-align:center;
	line-height:100%;
}



/*****************/
/**** Helpers ****/
/*****************/
.clear {
	clear:both;
}

.disabled {
	opacity:0.5;
	cursor:auto;
}

.invisible {
	visibility:hidden;
}

.inexistant {
	display:none !important;
}

.close {
	background:#9f9d9c;
	width:30px;
	height:30px;
	text-align:center;
	padding:0 !important;
	cursor:pointer;
	position:absolute;
	right:1%;
}

.close svg {
	position: absolute;
	left: 2px;
    top: 2px;
}

.helpBox .close, .fieldDetail .close {
	right:0;
}

.toggle.show {
	background: #9f9d9c;
	color: #fff;
	width: 18px;
	display: inline-block;
	height: 18px;
	text-align:center;
	line-height: 18px;
}

.toggle.hide {
	background: #9f9d9c;
	color: #fff;
	width: 16px;
	display: inline-block;
	height: 18px;
	padding-left:2px;
	line-height: 18px;
}

.dark {
	background:#9f9d9c !important;
}

.light {
	background:#faf9f9 !important;
}

.minimized {
	overflow:hidden !important;
	height:0 !important;
	min-height:0 !important;
	max-height:0 !important;
	padding:0 !important;
}

.highlite {
	background:rgba(215, 128, 93, 0.5) !important;
}

.notSet {
	color:#9f9d9c;
}

.extHelp {
	color:#faf9f9;
	width:5%;
	display:inline-block;
	text-align:center;
	font-family:"Times", serif;
	font-size:0.8em;
	background:#9f9d9c;
	font-weight:bold;
	cursor: pointer;
}

.search .helpBox {
	position:absolute;
	width:150%;
	z-index:100;
	background:#9f9d9c;
	box-shadow:0 1px 3px 3px #9f9d9c;
	color:#faf9f9;
	font-family:Times, serif;
	margin-left:-50%
}

.search .helpBox.bitHelp {
	margin:0;
	width:100%;
}

.search .helpBox div {
	padding: 0 1%;
}

.helpBox .header {
	background:#c3d9ff;
	padding:0 1%;
	font-size: 1.9em;
    font-weight: bold;
    line-height: 1em;
}

.pointer {
	cursor: pointer;
}

/* css for timepicker */
#ui-datepicker-div {
	z-index:100 !important;
}

.ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
.ui-timepicker-div dl { text-align: left; }
.ui-timepicker-div dl dt { float: left; clear:left; padding: 0 0 0 5px; }
.ui-timepicker-div dl dd { margin: 0 10px 10px 45%; }
.ui-timepicker-div td { font-size: 90%; }
.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }

.ui-timepicker-rtl{ direction: rtl; }
.ui-timepicker-rtl dl { text-align: right; padding: 0 5px 0 0; }
.ui-timepicker-rtl dl dt{ float: right; clear: right; }
.ui-timepicker-rtl dl dd { margin: 0 45% 10px 10px; }