.tablesort th[role=columnheader]:not(.no-sort) {
	cursor: pointer;
}

.tablesort th[role=columnheader]:not(.no-sort):after {
	content: '';
	float: right;
	margin-top: 7px;
	border-width: 0 4px 4px;
	border-style: solid;
	border-color: #404040 transparent;
	visibility: hidden;
	opacity: 0;
	-ms-user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.tablesort th[aria-sort=ascending]:not(.no-sort):after {
	border-bottom: none;
	border-width: 4px 4px 0;
}

.tablesort th[aria-sort]:not(.no-sort):after {
	visibility: visible;
	opacity: 0.4;
}

.tablesort th[role=columnheader]:not(.no-sort):hover:after {
	visibility: visible;
	opacity: 1;
}

.tablesort {
	-webkit-user-select: none;
	width:100%;
	background:#fff;
	border-spacing:0;
	margin:10px 0;
	border:1px solid #ddd;
	border-collapse:separate;
	*border-collapse:collapsed;
	-webkit-box-shadow:0 0 4px rgba(0,0,0,0.10);
	   -moz-box-shadow:0 0 4px rgba(0,0,0,0.10);
			box-shadow:0 0 4px rgba(0,0,0,0.10);
	}

.tablesort th,
.tablesort td {
	padding:8px;
	line-height:18px;
	text-align:left;
	border-top:1px solid #ddd;
}
.tablesort th {
	background:#eee;
	background:-webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#eee));
	background:-moz-linear-gradient(top, #f6f6f6, #eee);
	text-shadow:0 1px 0 #fff;
	font-weight:bold;
	vertical-align:middle;
}
.tablesort td {
	vertical-align:middle;
}
.tablesort thead:first-child tr th,
.tablesort thead:first-child tr td {
	border-top:0;
}
.tablesort tbody + tbody {
	border-top:2px solid #ddd;
}
.tablesort th + th,
.tablesort td + td,
.tablesort th + td,
.tablesort td + th {
	border-left:1px solid #ddd;
}
.tablesort thead:first-child tr:first-child th,
.tablesort tbody:first-child tr:first-child th,
.tablesort tbody:first-child tr:first-child td {
	border-top:0;
}

.tablesort tbody tr {
	cursor:pointer;
}

.table_search {
	background-image: url('/pics/searchicon.png'); /* Add a search icon to input */
	background-position: 10px 12px; /* Position the search icon */
	background-repeat: no-repeat; /* Do not repeat the icon image */
	width: calc(100% - 62px); /* Full-width */
	font-size: 16px; /* Increase font-size */
	padding: 12px 20px 12px 40px; /* Add some padding */
	border: 1px solid #ddd; /* Add a grey border */
	background-size: 20px;
}

.tablesort_selected {
	background-color: #DDD;
}