/*/ Polylog SA (c) 2023 /*/

/*/ Généralités /*/

table { 
	width: 100%;
	table-layout: auto;
	border-collapse: separate; 
	margin: 0; 
	position: relative;
	font-size: inherit; 
	border-spacing: 0 !important;
	}

/*/ Contenant /*/

.fwk-table-container {
	overflow: auto;
	/*max-height: calc(100vh - 350px);*/
	position: relative;
	margin: 10px 0;
	border-radius: var(--round2);
	background-color: var(--gray1);
	}

.fwk-table-container.container-footer {
	background: none;
	margin: -5px 0 -8px;
	border-color: transparent;
	}
	
.fwk-table-container.container-footer .fwk-tag,
.fwk-table-container.container-footer .fwk-tag:hover {
	background: var(--main-light);
	color: var(--fixdark);
	margin: 0 10px 0 0;
	}
	
.fwk-table-container.container-footer td {
	padding: 0 !important;
	}
	
.fwk-table-container.container-footer td:hover,
.fwk-table-container.container-footer tr.isHighlighted {
	background: var(--white) !important;
	}

/*/ Tableaux sans redimensionnement /*/

.fwk-table-container.table-resize table { 
	table-layout: auto;
	}

.fwk-table-container.table-noresize thead th,
.fwk-table-container.table-noresize tbody td { 
	width: auto;
	}
		
/*/ En-tête /*/

.fwk-table thead { 
	z-index: 9;
	position: sticky;
	top: 0;
	}

.fwk-table thead th { 
	position: relative;
	min-width: 36px;
	text-align: left; 
	font-weight: 600;
	font-size: inherit;
	line-height: 22px;
	padding: 10px 14px;  
	vertical-align: middle;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	color: var(--dark1);
	background: var(--gray1);
	border-bottom: 2px solid var(--white);
	border-right: 2px solid var(--white);
	}
	
.fwk-table thead th div.fwk-thhandle { 
	display: inline-block;
	position: relative;
	z-index: 1;
	}
	
.fwk-table thead th u {
	display: inline-block;
	line-height: inherit;
	margin-left: 5px;
	}
	
.fwk-table thead th span {
	opacity: 0;
	width: 30px;
	height: 100%;
	line-height: 42px;
	text-align: center;
	cursor: pointer;
	background: inherit;
	margin: auto;
	position: absolute;
	bottom: 0;
	left: 0;
	top: 0;
	z-index: 2;
	background: var(--gray1);
	color: var(--dark1) !important;
	}

.fwk-table thead th span.fwk-js-drag {
	right: 0;
	left: auto;
	}

.fwk-table th em {
	display: block;
	font-size: 14px;
	line-height: inherit;
}

.fwk-table th em.sLarge {
	font-size: 17px;
}

.fwk-table thead th.fwk-hover:hover {
	opacity: 1;
	}

/*/ Tableaux de pièces jointes (formulaire) /*/

.fwk-table.table-disabled .fwk-table-container,
.fwk-table.table-disabled thead th,
.fwk-table.table-disabled tbody tr:hover td,
.fwk-table .fwk-tr-disabled td,
.fwk-table .fwk-td-disabled,
.fwk-table.table-disabled tbody tr.isHighlighted { 
	background: var(--mid1-light);
	color: var(--fixdark);
	}
	
.fwk-table.table-disabled span.fwk-active,
.fwk-table .fwk-tr-disabled span.fwk-active,
.fwk-table .fwk-td-disabled span.fwk-active {
	color: var(--mid1) !important;
	}
		
.fwk-table.table-disabled span.fwk-inactive,
.fwk-table .fwk-tr-disabled span.fwk-inactive,
.fwk-table .fwk-td-disabled span.fwk-inactive  {
	color: var(--white) !important;
	}
	
/*/ Tableaux de pièces jointes (formulaire) /*/

.fwk-table.table-attachments .fwk-table-container { 
	margin-top: 0px;
	border: 0px;
	}
	
.fwk-table.table-attachments tbody td { 
	background: var(--gray1);
	}

/*/ Tableaux avec rangées compactes /*/

/*.fwk-table.table-compact td {
	padding: 7px 14px;
}

.fwk-table.table-compact td.s10,
.fwk-table.table-compact th.s10,
.fwk-table.table-compact td.s10:last-child,
.fwk-table.table-compact th.s10:last-child {
	min-width: 56px !important;
	width: 56px !important;
	text-align: center;
	max-width: 56px !important;
	padding: 5px !important;
}*/

/*/ Tableaux de vue d'ensemble /*/

.fwk-table.table-split table {
	table-layout: fixed;
	}

.fwk-table.table-split tbody td { 
	vertical-align: top;
	border: none;
	}

.fwk-table.table-split .fwk-table-container {
	padding: 0;
	}

.fwk-table.table-split col.sName {
	width: 170px;
	}

.fwk-table.table-split thead th.sName,
.fwk-table.table-split tbody td.sName {
	white-space: normal;
	overflow-wrap: break-word;
	}
		
/*/ Tableaux dynamiques de formulaire /*/

.fwk-linky.linky-table-dynamic {
	margin: 15px 0 10px !important;
	}

.fwk-table.table-dynamic { 
	margin: 0 0 10px;
	border-radius: var(--round1);
	}

.fwk-table.table-dynamic-disabled {
	opacity: 0.5;
}

.fwk-table.table-dynamic tbody tr td { 
	border: 0px !important;
	background: var(--gray1) !important;
	padding: 10px;
	}

.fwk-table.table-dynamic tbody tr td input,
.fwk-table.table-dynamic tbody tr td select,
.fwk-table.table-dynamic tbody tr td textarea,
.fwk-table.table-dynamic tbody tr td .fwk-input-alike {
	background: var(--white);
	}

.fwk-table.table-dynamic tbody tr td textarea {
	min-height: 72px !important;
	max-height: 72px !important;
	resize: none;
	}

.fwk-table.table-dynamic tbody tr:hover td { 
	background: var(--gray1) !important;
	}
	
/*/ Corp /*/

.fwk-table:not(.table-dynamic) tbody tr td:focus-within,
.fwk-table:not(.table-dynamic) tbody tr td:focus-within select,
.fwk-table:not(.table-dynamic) tbody tr td:focus-within input, 
.fwk-table:not(.table-dynamic) tbody tr td:focus-within textarea { 
	background: var(--main-light);
	color: var(--fixdark);
	}

.fwk-table tbody tr.isHighlighted {
	background: var(--gray2);
	}

.fwk-table tbody tr.isAggregate td {
	background-color: var(--gray2);
	}

.fwk-table tbody tr.isAggregate em {
	color: var(--main);
	}

.fwk-table tbody tr.isAggregate td {
	border-right-color: transparent;
	font-weight: 600;
	}

.fwk-table tbody tr.isSelected,
.fwk-table tbody tr.isSelected:hover td,
.fwk-table tbody tr.isSelected input  {
	background: var(--gray2);
	/*color: var(--fixdark);*/
	}

.fwk-table tbody td { 
	min-width: 72px;
	height: 36px;
	text-align: left; 
	font-size: inherit; 
	line-height: 24px;
	padding: 10px 14px; 
	vertical-align: middle;
	white-space: nowrap; /* doit être "normal" si cellules avec taille définie */
	overflow: hidden;
	text-overflow: ellipsis;
	border-right: 2px solid var(--white);
	border-top: 2px solid var(--white);
	}

.fwk-table.table-vertop tbody td {
	vertical-align: top;
}

.fwk-table.table-noBorder tbody td {
	border-right: 0 solid var(--white);
	}

.fwk-table tbody tr td:last-child,
.fwk-table thead th:last-child { 
	border-right: none;
	}

.fwk-table tbody tr td.s10:last-child,
.fwk-table thead th.s10:last-child { 
	padding-right: 10px;
	padding-left: 10px;
	min-width: 66px !important;
	}
		
.fwk-table tbody tr:last-child td { 
	border-bottom: none;
	}

.fwk-table tbody tr:first-child td { 
	border-top: none;
	}
			
.fwk-table.table-compressed tbody td,
.component-compressed .fwk-table tbody td { 
	padding: 12px 20px;
	}
	
.fwk-table tbody td i,
.fwk-table thead th i { 
	display: inline-block; 
	width: 20px; 
	font-size: inherit; 
	text-align: left !important;
	}

.fwk-table td i.sLarge {
	font-size: 15px;
	width: 23px;
	line-height: 25px;
}

.fwk-table td i.sRequired {
	font-size: 10px;
	width: 17px;
	color: var(--red);
}

.fwk-table td em { 
	display: block; 
	font-size: 18px;
	font-style: normal; 
	line-height: inherit;
	}

.fwk-table td em.sLarge { 
	font-size: 17px;
	}

.fwk-table td em.sExtra {
	font-size: 30px;
	padding: 5px 0;
}

.fwk-table td .fwk-table-tdsplit {
	margin: 0 -14px;
	padding: 10px 14px;
	min-height: 46px;
	border-bottom: 2px dashed var(--white);
	overflow: hidden;
}

.fwk-table td .fwk-table-tdsplit:first-child {
	margin-top: -10px !important;
}

.fwk-table td .fwk-table-tdsplit:last-child {
	margin-bottom: -12px !important;
	border-bottom: none;
}

.fwk-table tr.isSelected td:not(.fwk-input) span.fwk-active {
	color: var(--col3) !important;
	}

.fwk-table td .fwk-table-hideshow span:not(.fwk-active) {

	}

.fwk-table tr:hover td .fwk-table-hideshow span {
	display: block;
	}

.fwk-table td span.fwk-search-highlight {
	background: var(--green-light);
	color: var(--fixdark);
	border-radius: var(--round3);
}

.fwk-table tbody td:not(.fwk-input) label { 
	line-height: 20px;
	padding-bottom: 0;
	}

.fwk-table tbody td label:not(.fwk-input-alike) span {
	display: block;
	font-size: 18px;
	font-style: normal;
	line-height: inherit;
	}

.fwk-table tbody td label .input span {
	}

.fwk-table th div.subtitle {
	display: block;
	font-size: 9px;
	line-height: 15px;
	margin-top: -4px;
	font-weight: 600;
	color: var(--main);
}

/*/ Pagination /*/

.fwk-table-pagination { 
	position: sticky;
	bottom: 0;
	}

.fwk-table-pagination .fwk-linky { 
	min-height: 30px;
	min-width: 30px;
	line-height: 20px;
	margin: 0;
	background-color: var(--white);
	color: var(--dark1);
	}
		
/*/ Tailles des colonnes /*/

.fwk-table td.sWrap {
	white-space: normal;
	overflow-wrap: break-word;
	}

.fwk-table td.sWrap textarea {
	white-space: pre-wrap;
}

.fwk-table td.sWrap input {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.fwk-table td.sCenter, 
.fwk-table th.sCenter { 
	text-align: center; 
	}

.fwk-table td.sRight, 
.fwk-table th.sRight { 
	text-align: right;
	}	

.fwk-table td.sTop,
.fwk-table th.sTop {
	vertical-align: top;
	}

.fwk-table td.sRight .fwk-tag { 
	float: right;
	margin: 0 0 0 10px; 
	}

.fwk-table td.sAdjust, 
.fwk-table th.sAdjust { 
	width: auto;
	max-width: auto;
	padding-right: 10px;
	min-width: 66px !important;
	}
	
.fwk-table td.s10, 
.fwk-table th.s10 { 
	min-width: 58px; 
	width: 58px !important; 
	text-align: center; 
	max-width: 58px;
	}

.fwk-table th.s10 {
	padding-left: 5px;
	padding-right: 5px;
	}

.fwk-table td.s12,
.fwk-table th.s12 {
	min-width: 70px;
	width: 70px !important;
	max-width: 70px;
}

.fwk-table td.s15, 
.fwk-table th.s15 { 
	min-width: 100px;
	width: 100px !important;
	max-width: 100px;
	}
	
.fwk-table td.s20, 
.fwk-table th.s20 { 
	min-width: 140px; 
	width: 140px !important; 
	max-width: 140px;
	}

.fwk-table td.s30, 
.fwk-table th.s30 { 
	min-width: 218px;
	width: 218px !important;
	max-width: 218px;
	}

.fwk-table td.sMin30,
.fwk-table th.sMin30 {
	min-width: 218px;
}

.fwk-table td.s40, 
.fwk-table th.s40 { 
	min-width: 260px; 
	width: 260px !important;
	max-width: 260px;
	}

.fwk-table td.sMin40,
.fwk-table th.sMin40 {
	min-width: 260px;
	}

.fwk-table td.sMin60,
.fwk-table th.sMin60 {
	min-width: 450px;
	}

.fwk-table td.s50,
.fwk-table th.s50 {
	min-width: 350px;
	width: 350px !important;
	max-width: 350px;
}

.fwk-table td.sDark,
.fwk-table th.sDark {
	background-color: var(--gray2);
}

.fwk-table td.sSunday,
.fwk-table th.sSunday {
	border-right-width: 5px;
}

.fwk-table th.sSticky {
	z-index: 10;
	}

.fwk-table td.sWrap .fwk-tag {
	white-space: normal;
	overflow-wrap: break-word;
	text-align: left;
}

/*/ Timeline (à ne pas confondre avec fwk-cal-timeline) /*/

.fwk-table .fwk-timeline-item {
	font-size: 9px;
	line-height: 14px;
	font-weight: 600;
	border-radius: var(--round3);
	margin: -10px -14px;
	padding: 3px 5px;
	z-index: 0;
	position: absolute;
	width: calc(100px);
	height: 44px;
	background: var(--main-light);
	color: var(--fixdark);
	border: 1px solid var(--main);
	border-left: 5px solid var(--main);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	text-align: left;
}

.fwk-table .fwk-timeline-item i {
	width: 15px;
}

/*/ Formulaire /*/

.fwk-table .fwk-table-input { 
	cursor: pointer;
	}

.fwk-table .fwk-table-input label {
	display: inline;
	}

.fwk-table table input,
.fwk-table table select,
.fwk-table table .fwk-input-alike { 
	white-space: nowrap; 
	overflow: hidden; 
	text-overflow: ellipsis;
	max-width: 100%;
	/*min-height: 26px;
	max-height: 26px;
	margin: -5px 0;
	padding: 0 10px;*/
	}

.fwk-table table input:focus,
.fwk-table table textarea:focus { 
	background: none;
	border: none;
	}

.fwk-table table textarea.fwk-input-editlive,
.fwk-table table input.fwk-input-editlive{
	padding: 0;
	border: none;
	min-height: 24px;
	height: 24px;
	line-height: inherit;
	background: none;
	border-radius: 0;
	resize: none;
}
		
/*/ Autre /*/

.fwk-tablegraph { 
	border-radius: var(--round2);
	height: 20px;
	margin: 2px 8px 2px 2px;
	background: var(--white);
	position: relative;
	min-width: 100px;
}

.fwk-tablegraph.tablegraph-float {
	float: left;
	width: 120px;
	margin-left: 5px;
}

.fwk-tablegraph-mid {
	width: 6px;
	height: calc(100% + 10px);
	background: var(--white);
	border-radius: var(--round2);
	border: 2px solid var(--white);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: -5px auto;
	z-index: 1;
}

.fwk-tablegraph-item {
	position: relative;
	height: 20px;
	float: left;
	background: var(--white);
	border: 2px solid var(--white);
	border-right: none;
}

.fwk-tablegraph-item:first-child {
	border-bottom-left-radius: var(--round2);
	border-top-left-radius: var(--round2);
	}

.fwk-tablegraph-item:last-child {
	border-right: 2px solid var(--white);
	border-bottom-right-radius: var(--round2);
	border-top-right-radius: var(--round2);
	}

/*/ Rangée de groupe /*/

.fwk-table tbody tr.fwk-table-group td {
	background: var(--mid1-light);
	border-right-color: transparent;
	color: var(--dark1);
	}

.fwk-table tbody tr.fwk-table-group td .fwk-right {
	float: none !important;
	}

.fwk-table tbody tr.fwk-table-group td .scol-link {
	background: var(--mid1);
	}

/*.fwk-table tbody tr.fwk-js-rowNoToggle td {
	background: var(--gray1);
	}*/

.fwk-table tbody tr.fwk-table-highlight td {
	background: var(--mid1-light);
	font-weight: 600;
	}

.fwk-table-group-line { 
	background: var(--main);
	height: 1.5px;
	width: 30px;
	float: left;
	margin: 11px 14px 11px 0;
	border-radius: var(--round1);
	}

.fwk-table tbody tr.fwk-table-group .tag-hover:hover { 
	opacity: 1;
	}

.fwk-table tr[fwk-table-toggle="0"] .fwk-table-group-line { 
	width: 15px;
	}

.fwk-table tr[fwk-table-toggle="1"] td {
	background: var(--gray2) !important;
	}

.fwk-table tr[fwk-table-toggle="1"] .fwk-table-group-line {
	width: 30px;
	}

.fwk-table tr[fwk-table-toggle="2"] td {
	background: var(--gray1) !important;
}

.fwk-table tr[fwk-table-toggle="2"] .fwk-table-group-line { 
	width: 45px;
	}


.fwk-table tbody tr.fwk-table-subgroup td {
	border-left-color: transparent;
	border-Right-color: transparent;
}

.fwk-table tbody tr.fwk-table-subgroup:hover {
	opacity: 1;
	cursor: default;
}

/*/ Tag /*/

.fwk-tag { 
	position: relative;
	z-index: 0;
	font-size: 12px;
	font-weight: 400; 
	line-height: 22px;
	min-height: 22px;
	min-width: 22px;
	padding: 0 8px;
	text-align: center;
	background-size: cover; 
	background-position: center; 
	margin: 1px 4px 1px 0;
	display: inline-block; 
	border-radius: var(--round2);
	background-color: var(--gray2);
	border: 1px solid transparent;
	white-space: nowrap; 
	text-overflow: ellipsis;
	vertical-align: middle;
	}

.fwk-table td.s10 .fwk-tag { 
	float: none;
	display: block;
	max-width: 30px;
	padding: 0 2px;
	margin-right: 0; 
	border-radius: var(--round1);
	}

.fwk-tag.tag-wide { 
	float: none;
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	margin: 0;
	}

.fwk-tag.tag-margintop {
	margin-top: 5px;
	}

.fwk-tag.tag-photo { 
	margin: 0 !important;
	padding: 0;
	width: 30px;
	max-width: 30px !important;
	height: 30px;
	line-height: 30px;
	font-size: 10px;
	font-weight: 400;
	border-radius: var(--round1);
	border: none;
	background-color: var(--white);
	color: var(--dark1);
	float: left;
	text-align: center !important;
	}
	
.fwk-tag.tag-photo img { 
	display: block; 
	border-radius: inherit; 
	width: 100%;
	height: 100%;
	object-fit: cover;
	margin: auto !important;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0; 
	right: 0;
	}

.fwk-table td.s10 .fwk-tag.tag-photo,
.fwk-table td.sCenter .fwk-tag.tag-photo { 
	margin: -4px auto !important; 
	}

.fwk-table td.sCenter .fwk-tag.tag-photo.tag-large {
	margin: 4px auto !important;
}

.fwk-tag.tag-photo.tag-large { 
	width: 36px; 
	max-width: 36px;
	height: 36px; 
	line-height: 36px;
	font-size: 10px;
	float: none;
	}

.fwk-tag.tag-large { 
	box-shadow: 0 0 0 0 var(--fixlight);
	width: 40px; 
	max-width: 40px !important;
	height: 40px; 
	line-height: 40px;
	font-size: 10px;
	}

.fwk-tag.tag-sLarge {
	margin: -2px -2px -2px 12px;
	height: 26px;
	line-height: 24px;
}

.fwk-tag.tag-sLargeBis {
	margin: -2px 10px -2px 0;
	height: 26px;
	line-height: 24px;
	font-size: 11px;
}

.fwk-tag.tag-right {
	margin: 0 5px 0 0 !important;
	}

.fwk-tag.tag-float {
	float: right;
	margin: 0 0 0 5px !important;
	}

.fwk-tag.tag-piled { 
	margin: 0 -6px 0 0 !important;
	float: left;
	box-shadow: 0 0 0 2px var(--gray1);
	}

.fwk-tag.tag-afterPhoto {
	float: none;
	margin: 0 0 0 5px !important;
	border-color: var(--white);
	background: transparent;
	}

.fwk-tag.tag-beforePhoto {
	float: none;
	margin: 0;
	}

.fwk-tag.tag-piled:hover { 
	opacity: 1 !important;
	}
	
.fwk-tag.tag-graph { 
	display: block;
	float: none;
	width: 30px; 
	height: 30px; 
	line-height: 30px; 
	border-radius: var(--round1);
	}

.fwk-tag.tag-item {
	display: block;
	float: none;
	height: auto;
	text-align: left;
	border-radius: var(--round3);
	padding: 2px 7px;
	white-space: normal;
	overflow-wrap: anywhere;
	font-size: 11px;
	line-height: 16px;
	margin: 3px 0;
	border-left: 5px solid transparent;
	}

.fwk-tag i { 
	width: 20px;
	/*font-size: 11px !important;*/
	line-height: inherit;
	text-align: left;
	}

.fwk-tag sup { 
	display: block;
	position: absolute;
	top: 0; 
	right: 0;
	border-radius: var(--round1);
	width: 16px;
	height: 16px;
	line-height: 16px;
	text-align: center;
	background: var(--main);
	color: var(--white);
	margin: -7px;
	box-shadow: 0 0 0 2px var(--gray1);
	}

.fwk-tag-sup {
	margin-left: 5px;
	font-size: 8px;
}

.fwk-tag i.fa-regular,
.fwk-tag i.fa-regular,
.fwk-tag i.fa-brands { 
	text-align: left; 
	font-size: 10px !important;
	width: 15px !important; 
	}
	
.fwk-tag.tag-hover:hover { 
	opacity: 0.7;
	cursor: pointer;
	}

/*/ Actions jQuery /*/

.fwk-table .fwk-thresize {
	background: none;
	width: 12px;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 900;
	margin-right: -6px;
	cursor: col-resize;
	}

.fwk-table .fwk-thdrag {
	background: none;
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 0;
	}
	
.fwk-table .fwk-thdrag.fwk-thdrag-left {
	left: 0;
	right: auto;
	}

.fwk-table .fwk-hoverdrag { 
	opacity: 0;
	}
	
.fwk-table .fwk-hoverdrop.fwk-thdrag-left { 
	box-shadow: -2px 0px 0px 0px var(--main)
	}

.fwk-table .fwk-hoverdrop.fwk-thdrag-right { 
	box-shadow: 2px 0px 0px 0px var(--main)
	}
		
