/* Bootstrap 5 breakpoints
xs: 0px
sm: 576px
md: 768px
lg: 992px
xl: 1200px
xxl: 1400px
*/
/*Forzar el uso del menú off-canvas hasta 1180px necesario para que entre el Menu Builder (xl y xxl) */
@media (max-width: 1180px) {
  /* Oculta el menú de escritorio */
  .sp-megamenu-wrapper {
    display: none !important;
  }

  /* Muestra el menú off-canvas y su botón */
  .offcanvas-menu {
    display: block !important;
  }

  .offcanvas-toggler,
  .offcanvas-toggler-secondary {
    display: flex !important;
    align-items: center !important;
  }

  /* Forzar visibilidad del botón hamburguesa */
  #offcanvas-toggler {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    justify-content: flex-end;
    align-items: center;
    position: relative;
    z-index: 9999;
    padding: 10px;
    margin-right: 15px;
  }

  .offcanvas-menu .offcanvas-inner{
		padding:10px;
   }
/*   .offcanvas-menu .offcanvas-inner ul.menu > li > ul li a {
		padding: 10px 0px;
		line-height: 18px;
	}*/
	.offcanvas-menu .offcanvas-inner ul.menu > li > ul li a {
	line-height: 30px !important;
	}

  /* Mostrar ícono tipo hamburguesa */
  .burger-icon {
    display: block !important;
  }

  /* Anular reglas del template.css que lo ocultan por clase */
  #sp-header #offcanvas-toggler.offcanvas,
  #sp-header #offcanvas-toggler.mega,
  #sp-header #offcanvas-toggler.d-none {
    display: flex !important;
  }
  
  /*Texto algo mas pequeño*/
  body, div.accordion-body,#tabla_tesis_doctorales tbody td  {
	  font-size:13px !important;
  }
  button.accordion-button {
	font-size: 17px !important;
	padding-left:0px !important;
  }
  div.accordion-body {
	  padding:0px 10px 10px 0px!important;
  }
  ol, ul  {
	  padding-left: 1rem !important;
  }
  #myTab{
	  padding-left:0px !important;
  }
  .alert-secondary {
	width:95%;
	margin:10px;
   }
}

/*AJUSTAR EL LOGO A LA IZQUIERDA*/
@media only screen and (max-width: 768px) and (orientation: portrait) {
  #sp-header.full-header {
    padding-left: 0px !important;
    padding-right: 0px !important;
  }
  #sp-logo{
	padding-left: 0px !important;
    padding-right: 0px !important;
  }
  #sp-menu {
	  width:150px;
  }	  
  .sppb-item.sppb-item-has-bg > img {
	  height:130px !important;
  }
    .sppb-item.sppb-item-has-bg .sppb-carousel-item-inner{
	  padding: 5px 20px !important;
  }
}
#sp-header {
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.5);
}
#sp-header .sp-module{
	margin:0px !important;
}
#sp-header.header-sticky{
	animation: none !important;
}
.sticky-header-placeholder{
	margin-top:5px solid #ff0000;
}
div.idioma .dropdown-toggle {
	padding:0px;
	margin:0px; 
	font-size:12px;
}
div.sp-page-title, #sp-bottom{
	background-image: linear-gradient(120deg, #b30636 5%, #960431 100%) !important;
}
div.bx-controls{
	display:none;
}
ul.lang-block li a{
	color:#000 !important;
	font-size:13px !important;
}
div.tab-content {
	margin-top:20px;
}
.breadcrumb {
	font-size: 14px !important;
	margin: 0px !important;
	padding:10px 0px !important;
	text-shadow:0px !important;
	--bs-breadcrumb-item-active-color: #222;
}
.article-details .article-can-edit a{
	background-color:#333;
}
.blog .article 
{
	box-shadow: rgba(17, 17, 26, 0.1) 0px 0px 16px;
}
.article-details p, .article-details div, div.sppb-addon-text-block div.sppb-addon-content{
	text-align:justify;
}
.article-info {
  margin:10px 0px 10px 0px;
}
ul.indice li {
  font-weight: bold;
  font-size: 19px;
  line-height: 1.2;
  padding:16px 0px;
  border-bottom: 1px solid #ccc !important;
  list-style: none;
}
ul.indice a{
	color: #212529;
}
ul li, ol li{
	text-align:left;
	line-height:30px;
}

.com-content-adminForm textarea {
	width:100% !important;
}
div.accordion-body{
	font-size:15px;
}
button.accordion-button{
	font-weight: bold;
	font-size:19px;
}
.accordion-button::after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2016%2016'%20fill%3D'%2523212529'%3E%3Cpath%20fill-rule%3D'evenodd'%20d%3D'M1.646%204.646a.5.5%200%200%201%20.708%200L8%2010.293l5.646-5.647a.5.5%200%200%201%20.708.708l-6%206a.5.5%200%200%201-.708%200l-6-6a.5.5%200%200%201%200-.708z'%2F%3E%3C%2Fsvg%3E") !important;
}
div.sppb-addon-articles-carousel div.bx-wrapper
{
	margin:0px;
}
.form-check{
	float:left;
}
.alert-secondary
{
	background-color: #f6f6f6;
	
}
.sppb-carousel-text
{
	color:white !important;
	text-shadow:2px 2px #333;
}
.sppb-carousel-text h2
{
	color:white !important;
	font-size:42px;
}
.sppb-carousel-text div
{
	font-size:22px;
	margin-bottom:15px;
}
.sppb-carousel-text a.sppb-btn
{
	text-shadow:0px 0px;
	background-color:#a40133;
	color:white;
	border-color:#000;
	padding:10px;
}
form.mod-finder input.form-control
{
	font-size:13px !important;
}
#sp-page-builder .sppb-section-title {
	margin-bottom: 25px;
}
#sp-page-builder .sppb-icon{
	padding:15px;
}
.sppb-panel-faq .sppb-panel-title {
	font-size: 18px;
}
.sppb-panel-faq .sppb-panel-body {
	padding: 0px 10px 0px 10px;
}
ul.sppb-nav, ul.lang-block {
	padding-left:0px !important;
}
.sppb-addon-tab .sppb-nav-modern > li > a {
	font-size: 14px;
	font-weight: bolder;
	line-height: 1.42857143;
	padding: 12px 13px;
	background: #f6f6f6;
	color: #BE0F2E;
	border: 1px solid #e6e6e6;
	border-radius: 4px 4px 0 0;
}
.sppb-addon-tab .sppb-nav-modern > li.active > a {
	color: #222;
	background-color: #fff;
	cursor: default;
}
.nav-tabs
{
	border-bottom:0px;
}
.nav-tabs .nav-link
{
	font-weight:bold;
	background-color: #f6f6f6;
	border: 1px solid #e6e6e6;
	margin-right:5px;
	color: #BE0F2E;
	border-radius:0px;
}
.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active {
	color: #000;
	border-top:5px solid #BE0F2E;
	padding-top:3px;	
	
}
.accordion-button:focus
{
	box-shadow: none;
}
div.accordion-body{
		text-align:left !important;
}
#acordeon-lineas .col-md-3{
		padding:0px !important;
}
#acordeon-lineas li{
		list-style: none;
}
#tabla_tesis_doctorales td, #identificacion div, #identificacion div p{
	text-align:left !important;
}
/* Estilo para la columna de Directores en el encabezado y en el cuerpo de la tabla */
#tabla_tesis_doctorales th:nth-child(1), #tabla_tesis_doctorales td:nth-child(1)  /* Celdas de la 1ª columna (Autor) */{width: 20%;}
#tabla_tesis_doctorales th:nth-child(2), #tabla_tesis_doctorales td:nth-child(2)  /* Celdas de la 2ª columna (Tesis) */{width: 30%;}
#tabla_tesis_doctorales th:nth-child(3), #tabla_tesis_doctorales td:nth-child(3)  /* Celdas de la 3ª columna (Fec defensa) */{width: 5%;}
#tabla_tesis_doctorales th:nth-child(4), #tabla_tesis_doctorales td:nth-child(4)  /* Celdas de la 4ª columna (Turor/a) */{width: 20%;}
#tabla_tesis_doctorales th:nth-child(5), #tabla_tesis_doctorales td:nth-child(5)  /* Celdas de la 5ª columna (Directores) */{width: 25%;}


/* Estilo para el tamaño de letra de las celdas del cuerpo de la tabla */
#tabla_tesis_doctorales tbody td {
    font-size: 14px;
}

/* Estilo para los encabezados de tabla ordenables */
#tabla_tesis_doctorales th { /* <--- CAMBIADO AQUÍ */
    cursor: pointer;
    position: relative;
    padding-right: 25px;
    white-space: nowrap;
}

/* Estilo para las flechas de ordenación */
#tabla_tesis_doctorales th::before, /* <--- CAMBIADO AQUÍ */
#tabla_tesis_doctorales th::after { /* <--- CAMBIADO AQUÍ */
    content: '';
    position: absolute;
    right: 8px;
    font-size: 0.8em;
    opacity: 0.3;
    transition: opacity 0.2s ease-in-out;
}

/* Flecha ascendente (triángulo hacia arriba) */
#tabla_tesis_doctorales th::before { /* <--- CAMBIADO AQUÍ */
    top: 50%;
    margin-top: -8px;
    content: '\25B2';
}

/* Flecha descendente (triángulo hacia abajo) */
#tabla_tesis_doctorales th::after { /* <--- CAMBIADO AQUÍ */
    top: 50%;
    margin-top: 2px;
    content: '\25BC';
}

/* Cuando la columna está ordenada de forma ascendente */
#tabla_tesis_doctorales th.asc::before { /* <--- CAMBIADO AQUÍ */
    opacity: 1;
    color: #BE0F2E;
}

/* Cuando la columna está ordenada de forma descendente */
#tabla_tesis_doctorales th.desc::after { /* <--- CAMBIADO AQUÍ */
    opacity: 1;
    color: #BE0F2E;
}

/* Ocultar la flecha no activa cuando una columna está ordenada */
#tabla_tesis_doctorales th.asc::after, /* <--- CAMBIADO AQUÍ */
#tabla_tesis_doctorales th.desc::before { /* <--- CAMBIADO AQUÍ */
    opacity: 0;
}


/* Opcional: Estilo "enlazable" al pasar el ratón */
#tabla_tesis_doctorales th:hover { /* <--- CAMBIADO AQUÍ */
    color: #BE0F2E;
    text-decoration: underline; /* Opcional: subrayar al pasar el ratón */
}

#paginationControls li.page-item {
    font-size: 14px !important;
}
.icon-legend span.legend-text {
	font-family: 'Raleway', sans-serif;
	font-weight: normal;
	font-size: 12px; /* opcional, para ajustar tamaño si FA la altera */
}

/* Estilo base para todos los iconos de la tesis doctoral */
#tabla_tesis_doctorales tbody td i {
    font-size: 16px;
    vertical-align: middle;
    margin-left: 5px;
    display: inline-block;
	color: #999;
}

/* Estilo específico para el icono de Cum Laude */
.fa-cum-laude-icon {
    color: #777;
}

/* Estilo específico para el icono de Mención Internacional */
.fa-international-icon {
    color: #777;
}

/* Estilo específico para el icono de Doctorado Industrial */
.fa-industrial-icon {
    color: #777; /* Cambiado a un gris oscuro (casi negro) */
}
/* Estilo específico para el icono de Doctorado cotutela */
.fa-cotutela-icon {
    color: #777; /* Cambiado a un gris oscuro (casi negro) */
}

div.chart-container {
    position: relative;
	margin: auto;
	height: 400px;
	width: 100%;
	max-width: 900px;
	/*border: 1px solid #eee;*/
	padding: 15px;
	margin-bottom: 30px; /* Espacio entre gráficos */
	/*box-shadow: 0 0 10px rgba(0,0,0,0.1); /* Sombra suave */
	border-radius: 8px; /* Bordes redondeados */
	display: flex; /* Para centrar el canvas verticalmente si es necesario */
	align-items: center;
    justify-content: center;
}
div.chart-container-full {
    position: relative;
	margin: auto;
	height: 600px;
	width: 100%;
	max-width: 100%;
	/*border: 1px solid #eee;*/
	padding: 15px;
	margin-bottom: 30px; /* Espacio entre gráficos */
	/*box-shadow: 0 0 10px rgba(0,0,0,0.1); /* Sombra suave */
	border-radius: 8px; /* Bordes redondeados */
	display: flex; /* Para centrar el canvas verticalmente si es necesario */
	align-items: center;
    justify-content: center;
}
div.chart-container-full2 {
    position: relative;
	margin: auto;
	height: 600px;
	width: 100%;
	max-width: 1180px;
	/*border: 1px solid #eee;*/
	padding: 15px;
	margin-bottom: 30px; /* Espacio entre gráficos */
	/*box-shadow: 0 0 10px rgba(0,0,0,0.1); /* Sombra suave */
	border-radius: 8px; /* Bordes redondeados */
	display: flex; /* Para centrar el canvas verticalmente si es necesario */
	align-items: center;
    justify-content: center;
}
div.modbpcounter  {	text-align:center;}
div.modbpcounter span.label {font-size:14px; color:#666;}
div.modbpcounter span.number {font-size:28px !important;}


/*************************** ENLACES A ARCHIVOS *******************/
.image, .word, .excel, .pdf, .txt, .zip, .clip, .video {
    background-position: left center;
    background-repeat: no-repeat;
    height: 18px;
    line-height: 20px;
    padding: 5px 5px 5px 20px;
}
a[href$=".doc"], a[href$=".docx"], a[href$=".pdf"]
 {
    background-position: left center;
    background-repeat: no-repeat;
    height: 18px;
    line-height: 20px;
    padding: 5px 5px 5px 20px;}
a[href$=".doc"], a[href$=".docx"]{background-image: url("../images/word.gif");}
a[href$=".pdf"]{background-image: url("../images/pdf.gif");}