/* table layout */
table.dataTable {
	width: 100%;
	margin: 0 auto;
	clear: both;
	border-collapse: separate;
	border-spacing: 0;
	overflow: auto;
	margin-bottom: 3px;
}
table.dataTable > caption { position: absolute; top: 0; left: 0; height: 20px; margin: 0; padding: 0; z-index: 0; }
	table.dataTable > caption > * { margin: 0; padding: 0; }

table.dataTable > thead > tr > th, table.dataTable > thead > tr > td {
	font-weight: normal;
	border: solid;
	border-width: 0 0 0 1px;
	height: 30px;
	text-align: left;	
	position: relative;
	padding: 10px;
	line-height: 18px;
	z-index: 0;
	vertical-align: middle;
	}
	table.dataTable > thead > tr > th:active, table.dataTable > thead > tr > td:active { outline: none; }
	table.dataTable > thead > tr > th:first-child { border-left-width: 0; }

table.dataTable > thead > tr > th.sorting_asc:before, table.dataTable > thead > tr > th.sorting_desc:before {
	position: absolute;
	left: 0;
	display: block;
	width: 100%;
	height: 5px;
	content: '';
	z-index: 0;
	}
	table.dataTable > thead > tr > th.sorting_desc:before { bottom: 0; top: auto; }
	table.dataTable > thead > tr > th.sorting_asc:before { top: 0; bottom: auto; }
	table.dataTable > thead > tr > th.sorting_asc:hover > *:first-child:before, table.dataTable > thead th.sorting_desc:hover > *:first-child:before, 
	table.dataTable > thead > tr > th.sorting:hover > *:first-child:before {
		position: absolute;
		left: 0;
		display: block;
		width: 100%;
		height: 5px;
		content: '';
		z-index: 0;
	}
	table.dataTable > thead > tr > th.sorting_asc:hover > *:first-child:before { bottom: 0; top: auto; }
	table.dataTable > thead > tr > th.sorting:hover > *:first-child:before, table.dataTable > thead > tr > th.sorting_desc:hover > *:first-child:before { top: 0; bottom: auto; }
	table.dataTable > thead > tr > th.sorting_asc:hover > *:first-child:after, table.dataTable > thead > tr > th.sorting_desc:hover > *:first-child:after, 
	table.dataTable > thead > tr > th.sorting:hover > *:first-child:after {
		position: absolute;
		top: 4px; left: 0;
		display: block;
		width: 100%;
		z-index: 0;
		text-align: center;
		filter: alpha(opacity=40);
		opacity: 0.4;
		font: normal normal 0.8em 'Glyphicons Regular';
		line-height: 1;

		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	table.dataTable > thead > tr > th.sorting_asc:hover > *:first-child:after { content: '\e602'; top: auto; bottom: 4px; }
	table.dataTable > thead > tr > th.sorting:hover > *:first-child:after, table.dataTable > thead > tr > th.sorting_desc:hover > *:first-child:after { content: '\e601'; }
	table.dataTable > thead > tr > .sorting, table.dataTable > thead > tr > .sorting_asc, table.dataTable > thead > tr > .sorting_desc { cursor: pointer; }

table.dataTable > thead > tr > th > a { display: block; min-height: 23px; padding: 12px 0 5px 0; text-decoration: none; }

table.dataTable > thead > tr > th.controls { text-align: center; font-size: 18px; }
	table.dataTable > thead > tr > th.controls a, table.dataTable > thead > tr > th.controls input, table.dataTable > thead > tr > th.controls button { background-color: transparent; cursor: pointer; text-decoration: none; }
	table.dataTable > thead > tr > th.controls:first-child { width: 18px; }
	table.dataTable > thead > tr > th.controls:last-child { width: 35px; white-space: nowrap; }

table.dataTable > tfoot > tr > th, table.dataTable > tfoot > tr > td { position: relative; }
	table.dataTable > tfoot > tr > th { border-style: none; padding: 10px; }
	table.dataTable > tfoot > tr > th:first-child { border-radius: 0 0 0 4px; }
	table.dataTable > tfoot > tr > th:last-child { border-radius: 0 0 4px 0; }

table.dataTable > tbody > tr > th, table.dataTable > tbody > tr > td {
	border: solid;
	border-width: 0 0 1px 1px;
	height: 22px;
	padding: 8px 10px 5px 10px;
	font-size: 0.9em;
}
table.dataTable > tbody > tr > th { font-weight: bold; }
	table.dataTable > tbody > tr > td:last-child { border-right-width: 1px; }

table.dataTable > tbody > tr > td.controls {
	text-align: center;
	font-size: 0;
	white-space: nowrap;
	padding: 0 5px;
	vertical-align: middle;
	}
	table.dataTable > tbody > tr > td.controls > * { font-size: 16px; margin: 0 2px; }
	table.dataTable > tbody > tr > td.controls a, table.dataTable > tbody > tr > td.control:before, table.dataTable > tbody > tr > th.dcontrols input, 
	table.dataTable > tbody > tr > td.controls button { background-color: transparent; cursor: pointer; text-decoration: none; vertical-align: middle; }

table.dataTable.compact > tfoot > tr > th, table.dataTable.compact > tfoot > tr > td { padding: 4px; }
table.dataTable.compact > tbody > tr > th, table.dataTable.compact > tbody > tr > td { padding: 4px; }

table.dataTable th.dt-left, table.dataTable td.dt-left { text-align: left; }
	table.dataTable th.dt-center, table.dataTable td.dt-center, table.dataTable td.dataTables_empty { text-align: center; }
	table.dataTable th.dt-right, table.dataTable td.dt-right { text-align: right; }
	table.dataTable th.dt-justify, table.dataTable td.dt-justify { text-align: justify; }
	table.dataTable th.dt-nowrap, table.dataTable td.dt-nowrap { white-space: nowrap; }

table.dataTable thead th.dt-head-left, table.dataTable thead td.dt-head-left,
	table.dataTable tfoot th.dt-head-left, table.dataTable tfoot td.dt-head-left { text-align: left; }
	table.dataTable thead th.dt-head-center, table.dataTable thead td.dt-head-center, 
	table.dataTable tfoot th.dt-head-center, table.dataTable tfoot td.dt-head-center { text-align: center; }
	table.dataTable thead th.dt-head-right, table.dataTable thead td.dt-head-right,
	table.dataTable tfoot th.dt-head-right, table.dataTable tfoot td.dt-head-right { text-align: right; }
	table.dataTable thead th.dt-head-justify, table.dataTable thead td.dt-head-justify,
	table.dataTable tfoot th.dt-head-justify, table.dataTable tfoot td.dt-head-justify { text-align: justify; }

table.dataTable thead th.dt-head-nowrap, table.dataTable thead td.dt-head-nowrap,
	table.dataTable tfoot th.dt-head-nowrap, table.dataTable tfoot td.dt-head-nowrap { white-space: nowrap; }

table.dataTable tbody th.dt-body-left, table.dataTable tbody td.dt-body-left { text-align: left; }
	table.dataTable tbody th.dt-body-center, table.dataTable tbody td.dt-body-center { text-align: center; }
	table.dataTable tbody th.dt-body-right, table.dataTable tbody td.dt-body-right { text-align: right; }
	table.dataTable tbody th.dt-body-justify, table.dataTable tbody td.dt-body-justify { text-align: justify; }
	table.dataTable tbody th.dt-body-nowrap, table.dataTable tbody td.dt-body-nowrap { white-space: nowrap; }

table.dataTable, table.dataTable > thead > tr > th, table.dataTable > thead > tr > td, 
table.dataTable > tbody > tr > th, table.dataTable > tbody > tr > td {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

/* Control feature layout */
.dataTables_wrapper { clear: both; *zoom: 1; zoom: 1; }
	.dataTables_wrapper .dataTables_length { float: right; margin-left: -50px; position: relative; left: -284px; }
    .dataTables_wrapper .dataTables_length > label > select { height: 31px; margin-top: 3px; padding: 0 5px; }
	.dataTables_wrapper .dataTables_filter { width: 275px; margin-top: 3px; }
	.dataTables_filter input { margin-left: 5px; width: 300px; }
	.dataTables_wrapper .dataTables_filter:after {
		display: block;
		height: 0;
		content: '';
		visibility: hidden;
		clear: both;
	}
	.dataTables_wrapper .dataTables_filter > label {
		display: table;
		border-collapse: separate;
		border-spacing: 0;
		height: 31px;
		box-sizing: border-box;
		font-weight: normal;
		margin-bottom: 5px;
		width: 100%;
		cursor: pointer !important;
	}
	.dataTables_wrapper .dataTables_filter > label > input {
		display: table-cell;
		table-layout: fixed;
		float: left;
		width: 100%;
		height: 31px;
		box-sizing: border-box;
		border-style: solid;
        border-width: 1px;
		padding: 0 5px;
		transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	}
	.dataTables_wrapper .dataTables_filter > label > span {
		display: table-cell;
		width: 36px;
		height: 100%;
		background-color: ButtonFace;
		border: solid #ccc;
        color: black;
		border-width: 1px 1px 1px 0;
		padding: 0 5px;
		margin: 0;
		box-sizing: border-box;
		vertical-align: middle;
		text-align: center;
		font: normal normal 15px/1px 'Glyphicons Regular';
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
	.dataTables_wrapper .dataTables_filter > label > span:before { content: "\E028"; }	
	.dataTables_wrapper .dataTables_filter input { margin-left: 0; }

.dataTables_filter { float: right; }
.dataTables_filterRight { float: left; }

.dataTables_wrapper .dataTables_info {
	clear: both;
	float: left;
	font-size: 0.9em;
	padding-top: 0.755em;
}

.dataTables_wrapper .dataTables_paginate { float: right; text-align: center; margin: 3px 0; }
	table.dataTable > tfoot table { border-collapse: separate; border-spacing: 0; margin: 3px 0; }
	.dataTables_wrapper .dataTables_paginate:after {
		display: block;
		content: '';
		height: 0;
		visibility: hidden;
		clear: both;
	}
	.dataTables_wrapper .dataTables_paginate .paginate_button, .dataTables_wrapper .dataTables_paginate .ellipsis,
	table.dataTable > tfoot table td {
		display: block;
		box-sizing: border-box;
		width: 32px;
		height: 32px;
		line-height: 32px;
		float: left;
		border-style: solid;
        /*border-color: #ccc;*/
		border-width: 1px 0 1px 1px;
		/*color: #333;*/
		text-align: center;
		vertical-align: middle;
		text-decoration: none !important;
		cursor: pointer;
	}
	table.dataTable > tfoot table td { display: table-cell; float: none; padding: 0; }
	table.dataTable > tfoot table td > a { text-decoration: none !important; }
	.dataTables_wrapper .dataTables_paginate > span {
		display: block;
		box-sizing: border-box;
		height: 32px;
		line-height: 32px;
		float: left;
		text-align: center;
		vertical-align: middle;
	}
	table.dataTable > tfoot table td > * { display: block; height: 32px; }
	table.dataTable > tfoot table td > a:after { border-bottom: none !important; }
	.dataTables_wrapper .dataTables_paginate .paginate_button:not(.current):hover, table.dataTable > tfoot table td:hover > a {
		/*color: #333;
		background-color: #cccccc;*/
	}
	.dataTables_wrapper .dataTables_paginate > *:first-child { border-radius: 4px 0 0 4px; letter-spacing: -5px; }
	table.dataTable > tfoot table td:first-child { border-radius: 4px 0 0 4px; }
	.dataTables_wrapper .dataTables_paginate > *:last-child {
		border-radius: 0 4px 4px 0;
		letter-spacing: -5px;
		border-width: 1px;
	}
	table.dataTable > tfoot table td:last-child { border-radius: 0 4px 4px 0; border-width: 1px; }
	/*.dataTables_wrapper .dataTables_paginate > *:first-child, .dataTables_wrapper .dataTables_paginate > *:last-child { padding: 0 5px 0 0; }*/
	.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover, 
	table.dataTable > tfoot table td > span {
		/*background-color: #666;
		color: #fff;*/
	}
	.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, 
	.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active {
		cursor: default;
		/*color: #ddd !important;*/
	}
	.dataTables_wrapper .dataTables_paginate .paginate_button:active { outline: none; }
	.dataTables_wrapper .dataTables_paginate .ellipsis { cursor: default; }
	.dataTables_paginate { float: right; }


.dataTables_wrapper .dataTables_paginate a.previous:before { content: ''; }
.dataTables_wrapper .dataTables_paginate a.next:before { content: ''; }

.dataTables_wrapper .dataTables_processing {
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 50%;
	margin-top: 10px;
	padding: 5px 10px;
	text-align: center;
	font-size: 1.4em;
	/*background-color: white;*/
	border-radius: 24px;
	}
	.dataTables_wrapper .dataTables_length, .dataTables_wrapper .dataTables_filter,
	.dataTables_wrapper .dataTables_info, .dataTables_wrapper .dataTables_processing,
	.dataTables_wrapper .dataTables_paginate { /*color: #333333;*/ }

.dataTables_wrapper .dataTables_scroll { clear: both; }
	.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody { *margin-top: -1px; -webkit-overflow-scrolling: touch; }
	.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody th > div.dataTables_sizing,
	.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody td > div.dataTables_sizing {
		height: 0;
		overflow: hidden;
		margin: 0 !important;
		padding: 0 !important;
	}
	.dataTables_wrapper.no-footer .dataTables_scrollBody { border-bottom: 1px solid; /*border-bottom-color: #111;*/ }
	.dataTables_wrapper.no-footer div.dataTables_scrollHead table,
	.dataTables_wrapper.no-footer div.dataTables_scrollBody table { border-bottom: none; }

.dataTables_wrapper:after {
	visibility: hidden;
	display: block;
	content: "";
	clear: both;
	height: 0;
}

table.dataTable.dataTable_filterPlaceholder { margin-top: 32px; }

*[id^="filtersDiv"], #hiddenFiltersDiv { margin-bottom: -36px; margin-top: 5px; }
    *[id^="filtersDiv"] .form-group, #hiddenFiltersDiv .form-group { display: inline-block; vertical-align: middle; margin-right: 5px; margin-top: 2.5px; margin-bottom: 0; }
	*[id^="filtersDiv"].form-inline .control-label { padding-bottom: 0; }
    *[id^="filtersDiv"] .form-group:last-child { margin-right: 0; }
    *[id^="filtersDiv"] .checkbox, *[id^="filtersDiv"] .radio { padding-top: 0; }
	*[id^="filtersDiv"] .checkbox-inline, *[id^="filtersDiv"] .radio-inline { margin-bottom: 0; }

table.dataTable td > div:not(.input-group) .checkbox input[type="checkbox"], table.dataTable th > div:not(.input-group) .checkbox input[type="checkbox"], table.dataTable .radio input[type="radio"] { margin-top: -15px; margin-left: -10px; }
	table.dataTable .controls .checkbox input[type="checkbox"], table.dataTable .controls .radio input[type="radio"] { margin-top: -10px; }