
table {
	display: table;
	margin: 32px auto;
	padding: 0px;
	table-layout: fixed;
	width: 100%;
	height: auto;
}

table thead th {
	margin: 0px;
	padding: 4px 8px;
	font-family: 'cantarell';
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	line-height: 30px;
	border: 0px solid transparent;
	border-left: 1px solid var(--input-default-border);
	border-bottom: 1px solid var(--input-default-border);
	vertical-align: middle;
}

table thead th label[data-action="sort"]:before {
	display: inline-block;
	content: '\f162';
	width: 1em;
	line-height: inherit;
	margin: 0px;
	padding: 0px 0.25em;
	font-family: "icon";
	font-size: 16px;
	font-style: normal;
	font-weight: normal;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	font-smooth: antialiased;
	opacity: 0;
	speak: never;
	transition: all 200ms ease-out;
}

table thead th:not([data-sort]) label[data-action="sort"]:hover:before {
	opacity: 1;
	transition: all 200ms ease-out;
}

table thead th[data-sort="ascending"] label[data-action="sort"]:before  {
	opacity: 1;
	content: '\f162';
}

table tbody td {
	margin: 0px;
	padding: 4px 8px;
	font-family: 'cantarell';
	font-weight: normal;
	font-size: 16px;
	text-align: left;
	line-height: 30px;
	border: 0px solid transparent;
	border-left: 1px solid var(--input-default-border);
	border-bottom: 1px solid var(--input-default-border);
}

table[data-selectable="true"] thead th:first-of-type,
table[data-selectable="true"] tbody td:first-of-type {
	width: 32px;
	text-align: center;
}

table[data-selectable="true"] thead th:first-of-type input[type="checkbox"] {
	margin: 0px auto;
	vertical-align: middle;
	transform: translate(0px, -1px); /* WTF, Blink and WebKit, WTF? */
	cursor: ns-resize;
}

table[data-selectable="true"] tbody td:first-of-type input[type="checkbox"] {
	margin: 0px auto;
	vertical-align: middle;
	transform: translate(0px, -1px); /* WTF, Blink and WebKit, WTF? */
	cursor: pointer;
}

table thead th:last-of-type,
table tbody td:last-of-type {
	border-right: 1px solid var(--input-default-border);
}

table tbody tr:hover td {
	background: rgba(255,255,255,0.1);
	transition: background 200ms ease-out;
}

table tbody tr[data-select="true"] td {
	background: rgba(255,255,255,0.1);
}

table[data-selectable="true"] tbody td:first-of-type input[type="checkbox"]:checked {
	cursor: no-drop;
}

table tfoot {
	height: 50px;
	margin: 0px;
	padding: 0px 16px;
	line-height: 50px;
	color: var(--footer-color);
	background: var(--footer-background);
}

table tfoot tr td:first-of-type {
	width: auto;
	margin: 0px;
	padding: 0px 0px 0px 16px;
	vertical-align: middle;
	text-align: left;
}

table tfoot tr td[colspan]:not(:first-of-type):not(:last-of-type) {
	width: auto;
	margin: 0px;
	padding: 0px;
	vertical-align: middle;
	text-align: center;
}

table tfoot tr td:last-of-type {
	width: auto;
	margin: 0px;
	padding: 0px 16px 0px 0px;
	vertical-align: middle;
	text-align: right;
}

table tfoot tr td button {
	margin: 0px 0px 0px 8px;
}

table tfoot tr td button:first-of-type {
	margin-left: 0px;
}

table tfoot tr td label {
	font-family: 'cantarell';
	font-size: 16px;
	font-style: normal;
	font-weight: normal;
}

