/* =========================================================
   MÓDULO ALFONSO PESTAÑAS VERUS
   VERUS - TABS ELEMENTOR
   Clases disponibles:
   - verus-tabs      -> pestañas laterales
   - verus-tabs-sup  -> pestañas superiores
   ========================================================= */


/* #########################################################
   VERUS TABS - LATERAL IZQUIERDO
   Clase CSS: verus-tabs
   ######################################################### */

/* ---------- CONTENEDOR GENERAL ---------- */
.verus-tabs .e-n-tabs{
	--tabs-border-color: transparent !important;
	align-items: start !important;
}

/* ---------- COLUMNA DE PESTAÑAS ---------- */
.verus-tabs .e-n-tabs-heading{
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	align-self: start !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* ---------- PESTAÑA BASE / INACTIVA ---------- */
.verus-tabs .e-n-tab-title{
	display: flex !important;
	justify-content: flex-start !important;
	align-items: center !important;
	text-align: left !important;

	min-height: 0 !important;
	margin: 0 !important;
	padding: 14px 20px !important;

	background: linear-gradient(
		90deg,
		#ffffff 0%,
		#ffffff 88%,
		#fbfbfb 95%,
		#f1f1f1 100%
	) !important;

	color: #004257 !important;

	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	outline: none !important;
	transition: none !important;
	transform: none !important;

	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;

	position: relative !important;
	z-index: 1 !important;
	background-clip: padding-box !important;
}

/* texto interior */
.verus-tabs .e-n-tab-title .e-n-tab-title-text{
	color: inherit !important;
	font: inherit !important;
	line-height: inherit !important;
	letter-spacing: 0 !important;
	position: relative;
}

/* ---------- LÍNEAS ULTRAFINAS ESCRITORIO ---------- */
.verus-tabs .e-n-tab-title::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: rgba(0,0,0,0.035);
	pointer-events: none;
	transform: scaleY(0.5);
	transform-origin: top;
}

.verus-tabs .e-n-tab-title::after{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: rgba(0,0,0,0.035);
	pointer-events: none;
	transform: scaleY(0.5);
	transform-origin: bottom;
}

.verus-tabs .e-n-tab-title{
	box-shadow: inset -0.5px 0 0 rgba(0,0,0,0.04) !important;
}

/* pestaña superior: sin línea superior */
.verus-tabs .e-n-tab-title:first-child::before{
	display: none !important;
}

/* pestaña inferior: sin línea inferior */
.verus-tabs .e-n-tab-title:last-child::after{
	display: none !important;
}

/* sin hover en inactivas */
.verus-tabs .e-n-tab-title:hover,
.verus-tabs .e-n-tab-title:focus,
.verus-tabs .e-n-tab-title:active{
	background: linear-gradient(
		90deg,
		#ffffff 0%,
		#ffffff 88%,
		#fbfbfb 95%,
		#f1f1f1 100%
	) !important;
	color: #004257 !important;
	outline: none !important;
	transform: none !important;
}

/* ---------- PESTAÑA ACTIVA ---------- */
.verus-tabs .e-n-tab-title[aria-selected="true"]{
	background: #ffffff !important;
	color: inherit !important;
	font-weight: 700 !important;
	box-shadow: none !important;
	z-index: 3 !important;
}

/* activa: conserva líneas superior e inferior según posición */
.verus-tabs .e-n-tab-title[aria-selected="true"]::before{
	background: rgba(0,0,0,0.035);
	transform: scaleY(0.5);
}

.verus-tabs .e-n-tab-title[aria-selected="true"]::after{
	background: rgba(0,0,0,0.035);
	transform: scaleY(0.5);
}

/* superior activa: sin línea superior */
.verus-tabs .e-n-tab-title:first-child[aria-selected="true"]::before{
	display: none !important;
}

/* inferior activa: sin línea inferior */
.verus-tabs .e-n-tab-title:last-child[aria-selected="true"]::after{
	display: none !important;
}

/* activa sin hover */
.verus-tabs .e-n-tab-title[aria-selected="true"]:hover,
.verus-tabs .e-n-tab-title[aria-selected="true"]:focus,
.verus-tabs .e-n-tab-title[aria-selected="true"]:active{
	background: #ffffff !important;
	color: inherit !important;
	outline: none !important;
	transform: none !important;
}

/* ---------- CONTENIDO ---------- */
.verus-tabs .e-n-tabs-content{
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	min-width: 0 !important;
}

.verus-tabs [role="tabpanel"]{
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	padding: 0 0 0 24px !important;
	margin: 0 !important;
}

/* ---------- ESCRITORIO ---------- */
@media (min-width: 768px){
	.verus-tabs .e-n-tabs{
		display: grid !important;
		grid-template-columns: 215px minmax(0,1fr) !important;
		column-gap: 22px !important;
		align-items: start !important;
	}

	.verus-tabs .e-n-tabs-heading{
		grid-column: 1 !important;
	}

	.verus-tabs .e-n-tabs-content{
		grid-column: 2 !important;
	}
}

/* ---------- MÓVIL / TABLET ---------- */
@media (max-width: 767px){

	.verus-tabs .e-n-tabs{
		display: block !important;
	}

	.verus-tabs .e-n-tabs-heading{
		display: flex !important;
		flex-direction: column !important;
		gap: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.verus-tabs .e-n-tab-title{
		padding: 13px 16px !important;
		font-size: 15px !important;
		margin: 0 !important;
		box-shadow: inset -0.5px 0 0 rgba(0,0,0,0.04) !important;
	}

	.verus-tabs .e-n-tab-title::before,
	.verus-tabs .e-n-tab-title::after{
		display: none !important;
	}

	.verus-tabs .e-n-tab-title{
		border-top: 1px solid rgba(0,0,0,0.035) !important;
	}

	.verus-tabs .e-n-tab-title:first-child{
		border-top: none !important;
	}

	.verus-tabs .e-n-tab-title:last-child{
		border-bottom: none !important;
	}

	.verus-tabs .e-n-tab-title[aria-selected="true"]{
		border-top: 1px solid rgba(0,0,0,0.035) !important;
		box-shadow: none !important;
	}

	.verus-tabs .e-n-tab-title:first-child[aria-selected="true"]{
		border-top: none !important;
	}

	.verus-tabs .e-n-tabs-content{
		margin-top: 14px !important;
	}

	.verus-tabs [role="tabpanel"]{
		padding: 0 !important;
	}
}


/* #########################################################
   VERUS TABS SUP - HORIZONTAL ARRIBA
   Clase CSS: verus-tabs-sup
   ######################################################### */

/* ---------- CONTENEDOR GENERAL ---------- */
.verus-tabs-sup .e-n-tabs{
	--tabs-border-color: transparent !important;
	display: block !important;
}

/* ---------- FILA DE PESTAÑAS SUPERIOR ---------- */
.verus-tabs-sup .e-n-tabs-heading{
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 0 !important;
	align-self: stretch !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* ---------- PESTAÑA BASE / INACTIVA ---------- */
.verus-tabs-sup .e-n-tab-title{
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	text-align: center !important;

	min-height: 0 !important;
	margin: 0 !important;
	padding: 14px 20px !important;

	background: linear-gradient(
		180deg,
		#ffffff 0%,
		#ffffff 88%,
		#fbfbfb 95%,
		#f1f1f1 100%
	) !important;

	color: #004257 !important;

	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	text-shadow: none !important;
	outline: none !important;
	transition: none !important;
	transform: none !important;

	font-size: 16px !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;

	position: relative !important;
	z-index: 1 !important;
	background-clip: padding-box !important;
}

/* texto interior */
.verus-tabs-sup .e-n-tab-title .e-n-tab-title-text{
	color: inherit !important;
	font: inherit !important;
	line-height: inherit !important;
	letter-spacing: 0 !important;
	position: relative;
	white-space: normal !important;
}

/* ---------- LÍNEAS ULTRAFINAS EN ESCRITORIO ---------- */
.verus-tabs-sup .e-n-tab-title::before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 1px;
	background: rgba(0,0,0,0.035);
	pointer-events: none;
	transform: scaleX(0.5);
	transform-origin: left;
}

.verus-tabs-sup .e-n-tab-title::after{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	width: 1px;
	background: rgba(0,0,0,0.035);
	pointer-events: none;
	transform: scaleX(0.5);
	transform-origin: right;
}

/* línea superior ultrafina */
.verus-tabs-sup .e-n-tab-title{
	box-shadow: inset 0 0.5px 0 rgba(0,0,0,0.04) !important;
}

/* primera pestaña: sin línea izquierda */
.verus-tabs-sup .e-n-tab-title:first-child::before{
	display: none !important;
}

/* última pestaña: sin línea derecha */
.verus-tabs-sup .e-n-tab-title:last-child::after{
	display: none !important;
}

/* sin hover en inactivas */
.verus-tabs-sup .e-n-tab-title:hover,
.verus-tabs-sup .e-n-tab-title:focus,
.verus-tabs-sup .e-n-tab-title:active{
	background: linear-gradient(
		180deg,
		#ffffff 0%,
		#ffffff 88%,
		#fbfbfb 95%,
		#f1f1f1 100%
	) !important;
	color: #004257 !important;
	outline: none !important;
	transform: none !important;
}

/* ---------- PESTAÑA ACTIVA ---------- */
.verus-tabs-sup .e-n-tab-title[aria-selected="true"]{
	background: #ffffff !important;
	color: inherit !important;
	font-weight: 700 !important;
	box-shadow: inset 0 0.5px 0 rgba(0,0,0,0.04) !important;
	z-index: 3 !important;
	margin-bottom: -1px !important;
}

/* activa sin hover */
.verus-tabs-sup .e-n-tab-title[aria-selected="true"]:hover,
.verus-tabs-sup .e-n-tab-title[aria-selected="true"]:focus,
.verus-tabs-sup .e-n-tab-title[aria-selected="true"]:active{
	background: #ffffff !important;
	color: inherit !important;
	outline: none !important;
	transform: none !important;
}

/* ---------- CONTENIDO ---------- */
.verus-tabs-sup .e-n-tabs-content{
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	min-width: 0 !important;
	margin-top: 0 !important;
	position: relative !important;
}

/* línea superior de unión con contenido */
.verus-tabs-sup .e-n-tabs-content::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: rgba(0,0,0,0.035);
	transform: scaleY(0.5);
	transform-origin: top;
	pointer-events: none;
}

/* paneles */
.verus-tabs-sup [role="tabpanel"]{
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
	padding: 24px 0 0 0 !important;
	margin: 0 !important;
	position: relative !important;
}

/* ---------- ESCRITORIO ---------- */
@media (min-width: 768px){
	.verus-tabs-sup .e-n-tabs-heading{
		width: 100% !important;
	}

	.verus-tabs-sup .e-n-tab-title{
		flex: 0 0 auto !important;
		min-width: 160px !important;
	}
}

/* ---------- MÓVIL / TABLET ---------- */
@media (max-width: 767px){

	.verus-tabs-sup .e-n-tabs-heading{
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: stretch !important;
		gap: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.verus-tabs-sup .e-n-tab-title{
		padding: 13px 16px !important;
		font-size: 15px !important;
		min-width: 0 !important;
		flex: 1 1 auto !important;
		margin: 0 !important;
		box-shadow: none !important;
	}

	.verus-tabs-sup .e-n-tab-title::before,
	.verus-tabs-sup .e-n-tab-title::after{
		display: none !important;
	}

	.verus-tabs-sup .e-n-tabs-heading{
		position: relative !important;
	}

	.verus-tabs-sup .e-n-tabs-heading::before{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 1px;
		background: rgba(0,0,0,0.035);
		transform: scaleY(0.5);
		transform-origin: top;
		pointer-events: none;
	}

	.verus-tabs-sup .e-n-tab-title{
		box-shadow: inset -0.5px 0 0 rgba(0,0,0,0.04) !important;
	}

	.verus-tabs-sup .e-n-tab-title:last-child{
		box-shadow: none !important;
	}

	.verus-tabs-sup [role="tabpanel"]{
		padding: 18px 0 0 0 !important;
	}
}
