
.tablesorter-spip {
	font-size: 90%;
	position: relative;
}

.tablesorter-spip thead {
	position: sticky;
	top: 0;
	z-index: 1;
}

/*
	Contournement d'un bugs des navigateurs FF, Chromium et Webkit sur le calcul des tables
	avec position:sticky sur thead et une couleur de background : les bordures de cellules ne s'affichent plus
	On ajoute un wrapper en JS pour recréer une bordure sur les cellules
*/

.tablesorter-spip thead th,
.tablesorter-spip thead td {
	border: none;
	padding: 0;
}
.tablesorter-spip tr > * {
	border: thin solid var(--tablesorter-color-gray);
	padding: var(--tablesorter-cell-padding);
}
.tablesorter-spip thead .thead-wrapper {
	border: thin solid var(--tablesorter-color-gray);
}
.tablesorter-spip thead th + th .thead-wrapper,
.tablesorter-spip thead td + td .thead-wrapper {
	border-left: none;
}
.tablesorter-spip thead tr + tr .thead-wrapper {
	border-top: none;
}
.tablesorter-filter-row .thead-wrapper {
	padding: var(--tablesorter-cell-padding);
}

/*
	Styles spécifiques à formidable_ts (entêtes)
*/

.tablesorter-spip ul.spip {
	margin-bottom: 0;
}
.tablesorter-spip ul.spip li {
	margin: 0 !important;
}

.tablesorter-spip .tablesorter-navigation {
	background-color: var(--tablesorter-color-accent-lightest);
}

.tablesorter-spip .tablesorter-navigation-items {
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	gap: 1em;
	height: 100%;
}
.tablesorter-spip .tablesorter-dates {
	display: flex;
	gap: 1.5em;
	align-items: center;
	border-inline-start: 1px solid var(--tablesorter-color-gray);
	padding-inline-start: 1em;
}
.tablesorter-spip .tablesorter-dates input {
	width: 8em;
	padding: var(--tablesorter-cell-padding);
	background-color: #FFF;
	border: 1px solid var(--tablesorter-color-gray-light);
	color: var(--tablesorter-color-gray-dark);
	box-sizing: border-box;
}
.tablesorter-spip .pager.tablesorter-pager {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.5em 1em;
}
.tablesorter-spip .pager.tablesorter-pager .pagenav {
	white-space: nowrap;
}
.tablesorter-spip .pager.tablesorter-pager .pagedisplay{
	margin: 0;
}

.tablesorter-spip .header .tablesorter-header-inner,
.tablesorter-spip .tablesorter-header .tablesorter-header-inner {
	padding: 0;
	background-position: right 2em;
}
.tablesorter-spip .header .tablesorter-header-inner .header-title,
.tablesorter-spip .tablesorter-header .tablesorter-header-inner .header-title {
	padding: var(--tablesorter-cell-padding) 18px var(--tablesorter-cell-padding) var(--tablesorter-cell-padding);
	
}

/*
  Layout en 100% de largeur avec tableau centré et barre de scoll sur la page
*/

.formidable_ts-fullwidth {
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
}
.formidable_ts-wrapper {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	padding-left: 1em;
	padding-right: 1em;
}
.formidable_ts-wrapper .tablesorter {
	width:100%;
}

/*
  Chargement
*/

.formidable_ts-wrapper.loading {
	cursor:wait;
}
.formidable_ts-wrapper.loading > * {
	opacity:0.3;
}
.formidable_ts-wrapper.loading .tablesorter-sticky-wrapper {
	opacity:0;
}
.formidable_ts-wrapper.loading::before, .formidable_ts-wrapper.loading .tablesorter-sticky-wrapper::before{
	content: "Chargement";
	text-align: center;
	font-size: 150%;
	display: block;
	opacity:1;
	color:var(--spip-color-theme);
}
