:root {
  --theme-meta-accent-color: var(--color-3);
  --color-1: #003ca3; /* Amarillo principal */
  --color-2: #060850; /* Azul complementario */
  --color-3: #188ff1; /* Rojo complementario */
  --color-4: #979797; /* Gris claro */
  --color-5: #93dbe5; /* Gris neutro */
  --color-6: #FFFFFF; /* Blanco */
  --color-7: #52a195; /* Blanco */
  --color-8: #745a76; /* Blanco */
  --color-black: #000; /* Negro */
  --color-fondo: linear-gradient(135deg, #060850, #188ff1); /* Degradado entre amarillo y azul */
}

.record-authors__badge {
  color: var(--color-1) !important;
}

.filter-item--quantile .filter-count {
  color: var(--color-1) !important;
}

.chip--green {
  background: var(--color-3) !important;
}

.record-title:hover,
.record-title:focus-visible,
.record-publication a,
.record-publication a:hover,
.record-meta-chip,
.record-meta-chip:hover,
.record-creator-link:hover,
.record-authors__more,
.record-authors__more:hover,
.record-creators__more,
.record-creators__more:hover {
  color: var(--color-3) !important;
}

/* ============================================
   GLOBAL STYLES
============================================ */
body {
  font-family: 'Poppins', Verdana, sans-serif!important;
  background: #fff !important;
  font-size: 16px !important;
}

.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6 {
  font-family: 'Poppins', Verdana, sans-serif!important;
}

/* ============================================
   PAGE STRUCTURE
============================================ */
.page {
  max-width: none !important;
  min-height: calc(100% - 240px) !important;
}

.page-background {
  background: #f8f8f8 !important;
}

.page-content,
.multiple-news,
#item-checks,
#resultado-fuentes {
  max-width: 1400px !important;
  margin: auto;
}

/* ============================================
   FOOTER
============================================ */
.site-footer-ipublic {
  background-color: var(--color-1);
  color: #fff;
}

.site-footer-ipublic .site-footer-legal {
  font-size: 13px;
  font-weight: bolder;
  margin-top: -25px;
}

.site-footer-center a {
  color: var(--color-6) !important;
  font-weight: 1rem !important;
}

.site-footer-right a img {
  height: 35px !important;
  margin-top: -20px !important;
}

#custom-left-footer {
  display: block;
}

#custom-left-footer img {
  width: 500px;
}

#left-footer {
  display: none;
}

/* ============================================
   NAVBAR
============================================ */
.navbar {
  min-height: 7.715rem;
}

.navbar-brand {
  height: 6.715rem !important;
}

.navbar-brand-logo {
  height: 60px;
  margin-top: 0px;
}

.navbar-brand-logo-normal,
.navbar-brand-center {
  display: none !important;
}

.navbar-brand-logo-special {
  display: inline-block !important;
}

.nav-item a.nav-link {
  margin-top: 26px !important;
}

.site-navbar-ipublic {
  background-color: #ffffff !important;
}

.navbar-icons,
.ipublic-nav-right {
  color: #000!important;
}

.ipublic-nav-right {
  margin-top: 34px !important;
}

/* ============================================
   INPUTS & SELECTS
============================================ */
#inputSearch-ipublic-nav {
  max-width: 300px;
  width: 300px;
  background: #fff;
  display: inline-flex;
  border: 1px solid var(--color-1);
  border-radius: 5px;
  box-shadow: none;
  z-index: 3;
  padding: 16px;
  margin: 0 auto;
  font-size: 14px;
  color: #000;
}

#select-nav-ipublic,
#select-workformnlist-nav-ipublic {
  display: inline-block;
  text-transform: uppercase !important;
  border: none !important;
  background: var(--color-1);
  color: #ffffffa3 !important;
  font-weight: 500 !important;
}

#select-nav-ipublic {
  font-size: 14px;
  text-align: right;
}

#select-workformnlist-nav-ipublic {
  font-size: 10px;
  letter-spacing: 0.6px;
}

/* ============================================
   CHECKBOXES & FORM CONTROLS
============================================ */
.checkbox-primary-ipublic {
  font-size: 16px !important;
}

.checkbox-primary-ipublic input[type="checkbox"]:checked + label::before {
  background-color: var(--color-1) !important;
  border-color: var(--color-1) !important;
}

.span-daterange-ipublic {
  padding: 6px 10px;
  background-color: var(--color-1) !important;
  color: #fff;
}

.form-fechas-wrapper #btn-buscar-anios {
    background-color: var(--color-3) !important;
    border-color: var(--color-3) !important;
}

/* ============================================
   BOTONES PERSONALIZADOS
============================================ */
.button-ipublic-principal {
  color: var(--color-black) !important;
  font-size: 20px !important;
  text-transform: uppercase;
  font-weight: 600 !important;
  letter-spacing: 0.5px;
}

.button-ipublic-principal.btn.active,
.button-ipublic-principal.focus,
.button-ipublic-principal:active,
.button-ipublic-principal:focus {
  text-decoration: none !important;
  color: var(--color-1) !important;
}

.button-ipublic-principal.btn.hover,
.button-ipublic-principal:hover {
  color: var(--color-3) !important;
}

.button-ipublic-secundario.btn.active,
.button-ipublic-secundario.focus,
.button-ipublic-secundario:active,
.button-ipublic-secundario:focus {
  color: var(--color-1) !important;
  text-decoration: none !important;
}

.ipublic-custom-button {
  background: var(--color-3) !important;
  color: #fff !important;
}

/* ============================================
   SLICK COMPONENTES
============================================ */
.ipublic-custom-slick {
  font-size: 120px !important;
  padding-top: 75px;
  padding-bottom: 20px;
  font-weight: 700 !important;
  color: var(--color-3) !important;
  max-width: 50%;
  text-align: left;
  margin: auto;
}

.ipublic-custom-slick-p {
  font-size: 40px !important;
  font-weight: 700 !important;
  text-transform: lowercase !important;
  margin-top: 20px;
  max-width: 50%;
  text-align: left;
  line-height: 1.2;
  margin: auto;
  color: var(--color-fondo);
}

.slick-next::before,
.slick-prev::before {
  color: var(--color-2) !important;
  font-size: 50px;
}

/* ============================================
   ELEMENTOS VISUALES (faja, logos, íconos)
============================================ */
.img-rounded,
#logo-portal {
  display: none !important;
}

.fa-external-link {
  margin-top: 20px;
}

.faja {
  height: 70%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
  background-image: revert;
}

.faja::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(40, 40, 40, 0.75) 0%, rgba(40, 40, 40, 0) 100%);
  z-index: 1;
}

.text-faja {
  color: #fff;
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: left;
}

.text-faja h1 {
  position: relative;
  min-height: calc(100%);
  margin: 0 auto;
  color: #fff;
  font-weight: 600;
  font-size: 55px;
  margin-bottom: max(1rem, .5em);
}

.text-faja h2 {
  color: #fff;
}

.text-faja h5 {
  position: relative;
  min-height: calc(100%);
  color: #fff;
  font-weight: 600;
  font-size: 40px;
  max-width: 50%;
}

/* ============================================
   PANEL Y SECCIONES PRINCIPALES
============================================ */
.panel {
  background-color: #fff !important;
}

.panel-body {
  padding: 0px !important;
}

.ipublic-panel {
  margin: auto;
  border: none !important;
  background: none !important;
}

#widgetCurrentChart {
  padding-top: 50px;
  padding-bottom: 100px;
  background-size: auto;
  background-repeat: no-repeat;
  position: relative;
}

#panel-last-year {
  background-color: #f8f8f8;
}

#panel-researcher .panel-transparent,
#panel-entity .panel-transparent,
#panel-source .panel-transparent,
#panel-item .panel-transparent,
#panel-project .panel-transparent {
  padding-bottom: 70px !important;
}

#panel-researcher,
#panel-entity,
#panel-source,
#panel-item {
  background: #f1f1f1 !important;
}

/* ============================================
   TABS Y NAVEGACIÓN DE CONTENIDO
============================================ */
.nav-tabs-line-ipublic .nav-link.active {
  color: var(--color-1) !important;
  background-color: transparent !important;
  border-bottom: 2px solid var(--color-1) !important;
}

.nav-tabs {
  padding-left: 20px;
  background: #F8F8F8;
}

.nav-tabs-animate .tab-content {
  overflow: hidden;
  background: #fff;
  border: 1px solid #f1f1f1 !important;
}

/* ============================================
   COMPONENTES Y BLOQUES PERSONALIZADOS
============================================ */
.multiple-news h4 {
  color: var(--color-black) !important;
  font-weight: 700 !important;
  font-size: 24px !important;
  margin-bottom: 35px !important;
}

.menu-ultimas-incorporaciones {
  text-align: center !important;
  max-width: 1800px;
  margin: auto;
}

.menu-ultimas-incorporaciones h3 {
  margin-bottom: 40px;
  font-weight: bold;
  text-align: center;
}

.ipublic-menu {
  padding-bottom: 40px;
}

.bg-first-chars-ipublic-portal,
.bg-first-chars {
  background-color: var(--color-1) !important;
}

.first-chars-ipublic-portal,
.first-chars {
  color: #fff !important;
}

/* ============================================
   DATATABLES PERSONALIZADOS
============================================ */
#tablaIPublic_wrapper .page-item.active .page-link,
#tablaIPublicSource_wrapper .page-item.active .page-link {
  z-index: 1;
  background-color: var(--color-1) !important;
  border-color: var(--color-1) !important;
}

#tablaIPublic_wrapper .page-item.active .page-link {
  color: #f2f2f2 !important;
}

#tablaIPublicSource_wrapper .page-item.active .page-link {
  color: #4b4b4b !important;
}

table.dataTable span.highlight {
  background-color: var(--color-1)66 !important;
}

#tablaIPublic_wrapper tbody > tr.selected {
  background-color: #F7F7F7 !important;
}

div.dtsp-panesContainer div.dtsp-searchPanes div.dtsp-searchPane div.dataTables_wrapper {
  border: 0px solid var(--color-5);
  border-radius: 0px;
  padding: 10px;
}

.exteriorTabla {
  max-width: 1800px;
}

.exteriorTabla div.dtsp-searchPane div.dataTables_wrapper,
#tablaIPublic_wrapper div.dtsp-searchPane div.dataTables_wrapper {
  border: 0px solid var(--color-5) !important;
  border-radius: 4px;
  overflow: hidden;
}

.exteriorTabla div.dtsp-panesContainer div.dataTables_wrapper div.dataTables_scrollBody {
  background: #f1f1f1 !important;
  border-bottom: none;
}

.exteriorTabla div.dtsp-panesContainer div.dtsp-searchPanes div.dtsp-searchPane {
  margin-top: 40px !important;
}

#buscar-datatables-ipublic-source, #buscar-datatables-ipublic-item, #buscar-datatables-ipublic-entity, #buscar-datatables-ipublic-researcher {
  font-weight: normal;
  letter-spacing: 1px;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
  margin-left: -6px;
  margin-top: -4px;
  padding-top: 12px;
  padding-bottom: 7px;
}

#button-items-normal,
#button-items-avanzada {
  padding-top: 70px;
}

.separator-tables {
  margin-top: 0px !important;
}

/* ============================================
   OTROS ESTILOS
============================================ */
.navbar-brand-center {
  display: none !important;
}

.blockquote {
  border-left: 2px solid var(--color-1) !important;
}

.vtl::before {
  background-color: var(--color-1) !important;
}

div.event::after {
  border: 5px solid var(--color-1) !important;
}

.ipublic-item-page a,
#profile-description .show-more,
#profile-description .show-more-source {
  color: var(--color-1);
}

.num_doc_produccion_ipublic {
  font-weight: bolder;
  color: var(--color-1);
  margin-left: 8px;
}

.style-rfTitle {
  font-weight: 600 !important;
}

#checks-workforms h5 {
  font-size: 22px;
  font-weight: 500;
}

.uam-footer .uam-footer-partners .uam-partner-logo {
  text-align: center;
}

.uam-footer ul {
  list-style: none;
  padding: 0;
  margin-bottom: 0;
}

.uam-partner-logo img {
  width: 100%;
  max-width: 176px;
}

#section-menu {
  background: #fbfbfb;
  padding-top: 50px;
}

#section-projects-overview,
.ipublic-project-overview,
#section-item-overview,
#section-investigadores-overview,
#section-entity-overview {
  background: #fff;
}

#section-projects-search {
  background-color: #f1f1f1 !important;
}

.floating-button:hover {
  transform: scale(1.1);
  color: var(--color-6);
  background-color: var(--color-3, --color-1);
}

.floating-button.active {
  background-color: var(--color-7, --color-1);
  color: var(--color-black);
  transform: scale(1.1);
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2);
}

.caja-principal {
  border: none !important;
  box-shadow: none !important;
}

#widget-inews{
  background: #f8f8f8!important;
  border: none !important;
  margin: 0px !important;
  padding: 70px;
}

#breadcrumbContainer {
  margin-top: 40px;
}

.group-item:nth-child(2) .ball, .group-item:nth-child(2) .sub-circle:nth-child(1) {
    background-color: var(--color-7);
}

.group-item:nth-child(4) .ball, .group-item:nth-child(4) .sub-circle:nth-child(1) {
    background-color: var(--color-8);
}

.navbar-inverse .navbar-toolbar .nav-link :hover, .ipublic-nav-right:hover {
    color: var(--color-3) !important;
}