/* UL */
.tabs{
	margin-left: -12px;
	position: relative;
}
.tabs::before{
	content: "";
	position: absolute;
	bottom: 0;
	height: 0;
	border-bottom: solid 1px var(--main-border-color);
	left: 12px;
	right: 0;
}
.tabs::after{
	/* Clearfix */
	clear: both;
	content: ".";
	display: block;
	font-size: 0;
	height: 0;
	line-height: 0;
	visibility: hidden;
}

/* No border */
.tabs.no_border::before{
	display: none;
}

/* LIST */
.tab_list {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
}

/* LI */
.tabs li{
	float: left;
	padding: 0;
	margin: 0;
}

/* A */
.tabs a{
	display: block;
	line-height: 18px;
	padding: 0 12px 12px;
	font-weight: 500;
	position: relative;
	cursor: pointer;
	transition: 100ms;
	min-width: 50px;
	text-align: center;
}
.tabs.s a{
	padding: 0 10px 10px;
	font-size: 13px;
}
.tabs.l a{
	padding: 8px 16px 16px;
}
.tabs.xl a{
	padding: 10px 16px 20px;
}
.tabs.s.has_v_pad a{
	padding-top: 10px;
}
.tabs.m.has_v_pad a{
	padding-top: 12px;
}
.tabs.l.has_v_pad a{
	padding-top: 16px;
}
.tabs.xl.has_v_pad a{
	padding-top: 20px;
}

.tabs a.active{
	color: var(--turquoise);
}
.tabs a.active_color_primary{
	color: var(--turquoise);
}
.tabs a.active_color_black{
	color: var(--black);
}
.tabs a.active_color_orange{
	color: var(--orange);
}
.tabs a:hover,
.tabs a:focus{
	border-color: #ddd;
	text-decoration: none;
}
.tabs a.disabled{
	border-color: transparent;
	pointer-events: none;
	color: var(--grey-4);
}

/* Error */
.tabs a.has_error::before,
.tabs a.has_warn::before{
	content: "";
	position: absolute;
	top: 50%;
	right: 2px;
	width: 5px;
	height: 5px;
	margin-top: -.8em;
	border-radius: 5px;
	background: #ec4c3b;
}
.tabs a.has_warn::before{
	background: #ffb715;
}
.tabs a.active::before{
	display: none;
}

/* Souligné */
.tabs a::after{
	content: "";
	position: absolute;
	bottom: 0;
	height: 3px;
	background-color: currentColor;
	opacity: 0;
	transition: 100ms;
	left: 12px;
	right: 12px;
	border-radius: 3px 3px 0 0;
}
.tabs.l a::after{
	right: 16px;
	left: 16px;
}
.tabs.xl a::after{
	right: 16px;
	left: 16px;
}

.tabs.no_border a::after{
	border-radius: 3px;
}
.tabs a:hover::after{
	opacity: .3;
}
.tabs a:active::after{
	opacity: .6;
}
.tabs a.active::after{
	opacity: 1;
}


/* ROUNDED TABS */
.rounded_tabs{
	display: inline-flex;
}
.rounded_tabs li a{
	display: block;
	font-size: 14px;
	font-weight: 500;
	color: var(--grey-0);
	padding: 6px 13px;
	border-radius: 30px;
	cursor: pointer;
	transition: all 200ms;
	user-select: none;
}
.rounded_tabs li:nth-child(n+2) a{
	margin-left: 2px;
}
.rounded_tabs.l li a{
	padding: 8px 13px;
}
.rounded_tabs.xl li a{
	padding: 8px 16px;
	font-size: 15px;
}
.rounded_tabs li a:hover{
	background: #f5f6f8;
}
.rounded_tabs li a.active{
	color: var(--turquoise);
	background-color: var(--turquoise-light);
}
.rounded_tabs li a.disabled{
	color: var(--grey-5);
	background-color: transparent !important;
	cursor: not-allowed;
}

.rounded_tabs a .fas:first-child:not(:last-child){
	margin-right: 4px;
}
