.navbar {
  background-color: #1e2dbe !important;
}

.bg-primary {
  background-color: #1e2dbe !important;
  border-color: #1e2dbe !important;
  color: white;
}

.btn-primary {
  background-color: #1e2dbe !important;
  border-color: #1e2dbe !important;
  color: white;
}

.btn-primary:hover {
  background-color: #1536a2 !important;
  border-color: #1536a2 !important;
  color: white;
}

.btn-primary:focus,
.btn-primary:active {
  background-color: #1e2dbe !important;
  border-color: #1e2dbe !important;
  box-shadow: 0 0 0 0.25rem rgba(30, 45, 190, 0.5);
  color: white;
}

.btn-primary:disabled {
  background-color: #c0c8d0 !important;
  border-color: #c0c8d0 !important;
  color: #6c757d !important;
}

.btn-outline-primary {
  color: #1e2dbe !important;
  border-color: #1e2dbe !important;
  background-color: transparent !important;
}

.btn-outline-primary:hover {
  background-color: #1536a2 !important;
  border-color: #1536a2 !important;
  color: white !important;
}

.btn-outline-primary:focus,
.btn-outline-primary:active {
  background-color: #1e2dbe !important;
  border-color: #1e2dbe !important;
  color: white !important;
  box-shadow: 0 0 0 0.25rem rgba(30, 45, 190, 0.5);
}

.btn-outline-primary:disabled {
  color: #6c757d !important;
  background-color: transparent !important;
  border-color: #c0c8d0 !important;
}

td.details-control {
  cursor: pointer;
}

.btn-xs {
  padding: 1px 5px !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  border-radius: 3px !important;
}

.card-anim {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card-anim:hover {
  transform: scale(1.01); /* Aumenta el tamaño al 105% */
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Añade un efecto de sombra más notable */
}

#loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
  z-index: 9999;

  display: flex;
  justify-content: center;
  align-items: center;

  opacity: 0;
  pointer-events: none; /* Evita interacciones mientras está oculto */
  transition: opacity 0.5s ease-in-out;
}

.spinner-border {
  width: 4rem;
  height: 4rem;
}

#loading.show {
  opacity: 1;
  pointer-events: auto;
}

#loading.hide {
  opacity: 0;
  pointer-events: none;
}

.fade-transition {
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
  pointer-events: none; /* evita interacciones mientras está oculto */
}

.fade-transition.show {
  opacity: 1;
  pointer-events: auto;
}

.spinner-custom {
  color: #1e2dbe !important;
}

/* Aplicar el color a los botones de paginación de DataTables */
.dataTables_wrapper .dataTables_paginate .pagination .page-link {
  color: #1e2dbe !important;
}

/* Hover y focus */
.dataTables_wrapper .dataTables_paginate .pagination .page-link:hover,
.dataTables_wrapper .dataTables_paginate .pagination .page-link:focus {
  background-color: #1e2dbe !important;
  color: #fff !important;
  border-color: #1e2dbe !important;
}

/* Botón activo */
.dataTables_wrapper
  .dataTables_paginate
  .pagination
  .page-item.active
  .page-link {
  background-color: #1e2dbe !important;
  border-color: #1e2dbe !important;
  color: #fff !important;
}

/* ===== Estilo visual Bootstrap 5 para Choices.js ===== */

/* Contenedor principal del input */
.choices__inner {
  padding: 0.375rem 0.75rem;
  border: 1px solid #ced4da;
  border-radius: 0.375rem;
  font-size: 1rem;
  line-height: 1.5;
  background-color: #fff;
  min-height: calc(1.5em + 0.75rem + 2px);
  box-shadow: none;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

/* Hover y foco como Bootstrap */
.choices__inner:focus,
.choices__inner.is-focused {
  border-color: #86b7fe;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

/* Dropdown (menú de opciones) */
.choices__list--dropdown {
  border: 1px solid #ced4da;
  border-radius: 0.375rem;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  z-index: 1000;
}

/* Opción dentro del dropdown */
.choices__list--dropdown .choices__item--selectable {
  padding: 0.375rem 0.75rem;
}

/* Opción resaltada al navegar con teclado o mouse */
.choices__item--selectable.is-highlighted {
  background-color: #0d6efd;
  color: white;
}

/* Tags en selección múltiple (como badge Bootstrap) */
.choices__list--multiple .choices__item {
  background-color: #0d6efd;
  color: white;
  border-radius: 0.375rem;
  padding: 0.25rem 0.5rem;
  margin: 0.125rem;
  font-size: 0.875rem;
}

/* Botón para borrar opción seleccionada */
.choices__list--multiple .choices__item .choices__button {
  color: white;
  margin-left: 0.25rem;
  opacity: 0.8;
}
.choices__list--multiple .choices__item .choices__button:hover {
  opacity: 1;
}

/* Eliminar bordes innecesarios alrededor de select oculto */
select.form-select.choices__input {
  display: none !important;
}

/* ESTILOS PARA ENCABEZADO DE NAV PILLS - Portafolio ficha*/

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: #1e2dbe !important;
  color: white;
}

.nav-pills .nav-link {
  color: #1e2dbe;
}

.nav-pills .nav-link:hover {
  color: #16219cb2;
}

/* Estilos para lista dentro de tabla */
.lista-estilo {
  list-style-type: none; /* Elimina el estilo de lista por defecto */
  padding-left: 0;
}

.lista-estilo li {
  padding-left: 20px; /* Espacio entre el ícono y el texto */
  position: relative;
}

.lista-estilo li i {
  position: absolute;
  left: 0; /* Posiciona el ícono a la izquierda de la lista */
  top: 50%;
  transform: translateY(-50%); /* Centra el ícono verticalmente */
  color: #000000; /* Cambia el color del ícono */
  font-size: 20px; /* Ajusta el tamaño del ícono si es necesario */
}


/* Estilospara swal */
.custom-swal-popup {
  border-radius: 1rem;
  font-family: "Segoe UI", sans-serif;
  padding: 1.5rem;
}

.custom-swal-title {
  color: #1e2dbe;
  font-weight: 600;
}

.custom-swal-confirm {
  background-color: #1e2dbe !important;
  color: white !important;
  border-radius: 0.5rem !important;
  padding: 0.5rem 1.2rem !important;
}

.custom-swal-cancel {
  background-color: #e0e0e0 !important;
  color: #333 !important;
  border-radius: 0.5rem !important;
  padding: 0.5rem 1.2rem !important;
}


#historial-tab {
  display: flex;
  align-items: center;
  justify-content: center;
}

.blink-highlight {
  animation: blink 0.6s linear infinite alternate;
  background-color: yellow;
  border-radius: 4px;
  padding: 2px 4px;
}

@keyframes blink {
  from { background-color: yellow; }
  to   { background-color: transparent; }
}



#historial-tab-pane {
  max-height: calc(100vh - 250px);
  overflow-y: auto;
  padding-right: 6px;
}


/* Estilos vista novedad */
.card-documento {
  display: inline-flex;             /* Se adapta bien en grids o inline flows */
  align-items: center;
  gap: 0.5rem;
  background-color: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 10px;
  padding: 0.6rem 0.8rem;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.2s ease;
  max-width: 100%;                  /* Evita que desborde */
  box-sizing: border-box;           /* Respeta padding dentro del ancho */
  word-break: break-word;           /* Evita overflow en textos largos */
}

.card-documento:hover {
  background-color: #e9ecef;
  transform: translateY(-2px);
}

.card-documento i {
  font-size: 1.3rem;
  color: #0d6efd;
  flex-shrink: 0;                   /* Mantiene el ícono visible */
}

.card-documento span {
  font-size: 0.9rem;
  color: #212529;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  flex: 1;                          /* Ocupa todo el espacio disponible */
  min-width: 0;                     /* Necesario para que text-overflow funcione en flex */
}

.contenedor-documentos2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.5rem;
  max-width: 50%; /* opcional: limita el espacio que ocupa la sección de documentos */
}
