html, body {
    min-height: 100%; /* Garantiza que siempre cubra el área visible */
    margin: 0;
    padding: 0;
    background: rgb(255, 255, 255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 10%, rgba(30,71,121,0.2) 100%);
    background-size: cover; /* Hace que el fondo abarque toda el área */
    background-attachment: fixed; /* Mantiene el fondo fijo al desplazarse */
    font-family: Inter;
}


.sidebar {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  width: 23rem;
  padding: 0rem 1rem;
  background: transparent;
  z-index: 1;
  border-top-right-radius: 28px;
  border-bottom-right-radius: 28px;
  overflow-y: auto;
}

/* Para hacer la barra de desplazamiento transparente */
.sidebar::-webkit-scrollbar {
  width: 0px;
}

.sidebar .nav{
   font-family:Inter;
   font-weight: 500;
   font-size: 11.5px;
   background: transparent;
   padding-top: 0px;
   padding-left:10px;
   
}

.sidebar .nav-link {
  width: 100%;
  white-space: nowrap;
  line-height:5rm;
  padding-left:2rm; 
  margin-left:2rm; 
  margin-top: 0.4rem;
  color:rgb(30,71,121);
  position: relative;
  }
  
.sidebar .nav-link.active {
  width: 100%;
  background-color: rgb(245, 245, 245);  /* Cambia el color de fondo del enlace activo */
  border-top-left-radius: 60px;
  border-bottom-left-radius: 60px;
  color: rgb(30,71,121);
  }
  

.sidebar .nav-link.active::before{
    content: "";
    position: absolute;
    top: -70px;
    right: -10px;
    width: 70px;
    height: 70px;
    background: transparent;
    border-radius: 70%;
    box-shadow: 30px 30px 0px rgb(245, 245, 245);
}

.sidebar .nav-link.active::after{
    content: "";
    position: absolute;
    bottom: -70px;
    right: -10px;
    width: 70px;
    height: 70px;
    background: transparent;
    border-radius: 70%;
    box-shadow: 30px -30px 0px rgb(245, 245, 245);
}

/* container for the sidebar header. make sure the contents don't wrap when
 * the sidebar is collapsed.
 */
.sidebar-header {
  display: flex;
  justify-content: left;
  align-items: center;
  white-space: nowrap;
  opacity: 1;
  margin-left: 2rem;
  margin-top: 3rem;
  font-family: Inter;
  font-size: 28px;
  color: rgb(245, 245, 245);
}


.create_container {
  border-radius: 10px;
  background-color:rgb(245, 245, 245);
  margin-left: 0px;
  margin-right:0px;
  margin-top: 7px;
  margin-bottom: 2px;
  padding:5px;
  position: absolute;
  top: 0;
  /* Institutional Logic: sidebar compartido ahora fijo en 280px, sin
     colapso responsive (antes 23rem=230px, colapsaba a 5rem en
     pantallas angostas). .create_container_prueba (abajo) NO se toca:
     /pagina_prueba sigue con su propio sidebar de 230px sin cambios. */
  left: 280px;
  width: calc(100vw - 280px);
}

.create_container_prueba {
  border-radius: 10px;
  background-color:rgb(245, 245, 245);
  margin-left: 0px;
  margin-right:0px;
  margin-top: 7px;
  margin-bottom: 2px;
  padding:5px;
  position: absolute;
  top: 0;
  left: 23rem; /* Ajustar este valor para que esté al lado de la sidebar */
  width: calc(100vw - 27rem); /* Ajustar el ancho según sea necesario */
}

.create_container2 {
  border-radius: 20px;
  background-color:white;
  margin: 10px;
  padding: 20px;
  position: relative;
  min-width: 200px;
  max-width: calc(100vw - 10rem);
  width: 95%;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
  z-index: 2;
}

.create_container3 {
  margin-left:15px;
  position: relative;
}

.sidebar .sidebar-logo {
  opacity: 1;
  visibility: visible;
  margin-bottom: 20px;
}

@media only screen and (max-width: 1200px) {

  .sidebar {
    font-family: Inter;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 5rem;
    padding: 0rem 1rem;
    /* Gradiente mejorado - menos blanco, más azul */
    background: linear-gradient(180deg, rgb(230, 235, 255) 0.05%, rgba(30,71,121,1) 100%);
    z-index: 1050;
    border-top-right-radius: 30px;
    border-bottom-right-radius: 30px;
  }
  
  .sidebar .nav {
    font-size: 12px;
    padding-top: 0px;
    padding-left: 10px;
  }
  
  /* Hide user info section when sidebar is collapsed */
  .sidebar .px-3 {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  }
  
  /* Hide bottom buttons section when sidebar is collapsed */
  .sidebar .mt-auto {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  }
  
  /* Hide logo text/content when collapsed (keep only icon visible) 
  /* .sidebar-logo {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  }*/
  
  /* when the user hovers on the sidebar, expand it */
  .sidebar:hover {
    width: 25rem;
    padding-top: 0px;
    padding-left: 15px;
  }
  
  /* Show user info section when sidebar is hovered */
  .sidebar:hover .px-3 {
    opacity: 1;
    visibility: visible;
  }
  
  /* Show bottom buttons section when sidebar is hovered */
  .sidebar:hover .mt-auto {
    opacity: 1;
    visibility: visible;
  }
  
  /* Show logo when sidebar is hovered */
  .sidebar:hover .sidebar-logo {
    opacity: 1;
    visibility: visible;
    margin-bottom: 10px;
  }
  
  /* make sure the contents of the navlink don't wrap when navbar collapses */
  .sidebar .nav-link {
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    line-height: 7rm;
    padding-left: 2rm; 
    margin-left: 2rm; 
    color: rgb(245, 245, 245);
    visibility: hidden;
  }
    
  .sidebar .nav-link.active {
    width: 100%;
    background-color: rgb(245, 245, 245);
    color: rgb(53, 86, 133);
    border-top-left-radius: 60px;
    border-bottom-left-radius: 60px;
  }
  
  /* when the sidebar is hovered, reveal the labels */
  .sidebar:hover .nav-link {
    visibility: visible;
    opacity: 1;
    color: rgb(245, 245, 245);
  }
  
  .sidebar:hover .nav-link.active {
    visibility: visible;
    opacity: 1;
    border-top-left-radius: 60px;
    border-bottom-left-radius: 60px;
    border-top-right-radius: 60px;
    border-bottom-right-radius: 60px;
    color: rgb(53, 86, 133);
  }
  
  /* container for the sidebar header. make sure the contents don't wrap when
   * the sidebar is collapsed.
   */
  .sidebar-header {
    display: flex;
    justify-content: left;
    align-items: center;
    overflow: hidden;
    white-space: nowrap;
    opacity: 0;
    margin-left: 1rem;
    margin-bottom: 0;
    transition: opacity 0.1s ease-in-out;
  }
  
  /* reveal the header when the sidebar is toggled */
  .sidebar:hover .sidebar-header {
    opacity: 1;
  }
  
  /* .create_container: sin override aquí — Institutional Logic mantiene
     el sidebar fijo en 280px sin colapso responsive, así que hereda la
     regla base (left: 280px) en todos los anchos de pantalla. */

  .create_container2 {
    min-width: calc(100vw - 15rem);
    height: 480px;
  }
}
    
@media only screen and (max-width: 500px) {

    /* .create_container: sin override aquí — ver nota arriba en el
       breakpoint de 1200px. */

    .create_container2 {
      min-width: 600px; /* Ajustar el ancho según sea necesario */
      height: 480px;
    }

}

/* position the content relative to the collapsed sidebar */
.content {
  margin-left: 270px;
  margin-right: 2rem;
  margin-top: 80px;
  padding: 1rem 2rem;
  min-width: 0;
}


.container_tabla {
  border-radius: 10px;
  background-color:white;
  margin: 15px;
  padding: 0px;
  position: relative;
}

.create_container4 {
  border-radius: 10px;
  background-color:transparent;
  margin: 15px;
  padding: 10px;
  position: relative;
}

.tabs1 {
  margin-bottom:10px;
  line-height:10px;
  font-size: 12px;
}

.tabs2 {
  margin-bottom:10px;
  line-height:10px;
  font-size: 12px;
}

.tabs1 .nav-item .nav-link {
  color: rgb(87, 87, 87); /* Texto gris */
}

.tabs2 .nav-item .nav-link {
  color: rgb(87, 87, 87); /* Texto gris */
}

.tabs1 .nav-item .nav-link.active {
  background: rgb(53, 86, 133);
  color: white;
  font-size: 12px;
}

.tabs2 .nav-item .nav-link.active {
  background: rgb(75, 107, 147);
  color: white;
  font-size: 12px;
}

.dcc_compon {
  line-height:14px;
  font-size: 10px;
}



th, td {
    padding: 12px 5px;
}

.DayPickerKeyboardShortcuts_buttonReset {
    display: none;
}

/* Aplica estilos generales al contenedor del DatePickerRange */
.my-datepicker {
    position: relative;
    background-color: transparent; /* Fondo transparente */
    border: none; /* Sin bordes */
    padding: 0; /* Sin padding */
    width:240px;
    height:25px;
    z-index: 3;
}

/* Estilos para los inputs del DatePickerRange */
.my-datepicker input {
    background-color: transparent; /* Fondo transparente para los campos de entrada */
    border: none; /* Elimina el borde */
    font-family: 'Inter', sans-serif;
    font-size: 11px;
    text-align: center;
    color: #333; /* Color del texto */
    width:100px;
    height: 25px;
}

/* Estilo del botón de limpiar (la "X") */
.my-datepicker .DateRangePickerInput_clearDates {
    background-color: transparent; /* Fondo transparente */
    border: none; /* Sin bordes */
    padding: 0; /* Elimina el padding */
    cursor: pointer; /* Cambia el cursor al pasar el mouse */
}

.my-datepicker .DateRangePickerInput_clearDates_svg {
    fill: rgb(255, 255, 255);  /* Color de la "X" */
}

/* Espacio entre las entradas de fecha y la flecha */
.my-datepicker .DateRangePickerInput {
    display: flex;
    align-items: center;
    width: 250px;
    border-radius: 8px; /* Ajusta el valor según el nivel de redondez deseado */
    border: 1px solid #ccc; /* Añade un borde ligero si es necesario */
    overflow: hidden; /* Asegúrate de que el contenido respete el borde redondeado */
    display: flex;
    align-items: center;
}

.my-datepicker .DateRangePickerInput_arrow {
    margin: 0 0px; /* Ajusta el margen para controlar el espacio horizontal */
}

/* Ajusta el tamaño de los días en el calendario */
.my-datepicker .CalendarDay {
    line-height: 15px; /* Alinea verticalmente el texto */
    font-size: 10px; /* Ajusta el tamaño de la fuente para que se vea bien */
}

/* Ajusta el tamaño del encabezado del mes */
.my-datepicker .CalendarMonth_caption {
    font-size: 14px; /* Ajusta el tamaño del texto del mes */
}

/* Estilo para el primer día seleccionado (borders redondeados a la izquierda) */
.my-datepicker .CalendarDay__selected_start {
    background-color:rgb(30,71,121) !important; /* Fondo más oscuro para los días seleccionados */
    color: white !important; /* Color del texto */
    border-radius: 20px 0 0 20px !important; /* Redondea solo los bordes izquierdos */
    display: flex; /* Alinea el texto en el centro */
    align-items: center; /* Centra verticalmente */
    justify-content: center; /* Centra horizontalmente */
    border: none;
}

/* Estilo para el último día seleccionado (borders redondeados a la derecha) */
.my-datepicker .CalendarDay__selected_end {
    background-color: rgb(30,71,121) !important; /* Fondo más oscuro para los días seleccionados */
    color: white !important; /* Color del texto */
    border-radius: 0 15px 15px 0 !important; /* Redondea solo los bordes derechos */
    display: flex; /* Alinea el texto en el centro */
    align-items: center; /* Centra verticalmente */
    justify-content: center; /* Centra horizontalmente */
    border: none;
}


/* Estilo para el rango de fechas seleccionadas */
.my-datepicker .CalendarDay__selected_range {
    background-color: rgb(30,71,121, 0.7) !important; /* Fondo del rango con transparencia */
    color: #0056b3 !important; /* Color del texto en el rango */
}

/* Estilo para el rango de fechas seleccionadas (solo rango de fondo) */
.my-datepicker .CalendarDay__selected_span {
    background-color: rgb(30,71,121, 0.7) !important; /* Fondo más claro para el rango */
    border-color: #ccc;
}


.button {
  font-family: Inter;
  display: flex;
  align-items: center; /* Centra verticalmente */
  justify-content: center; /* Centra horizontalmente */
  position: static;
  background-color: rgb(53, 86, 133); /* Cambia el color de fondo según tus preferencias */
  color: white;
  font-size: 8px;
  cursor: pointer;
  border-radius: 4px; /* Agrega bordes redondeados */
  transition-duration: 0.4s; /* Agrega una transición suave */
  width: 80px;
  height: 25px;
  float: right;
}


.button:hover {
  background-color:rgb(30,71,121, 0.5); /* Cambia el color de fondo durante el hover */
}

.fix_label {
  text-align: center;
  font-size: 20px;
  margin: 0 auto;
  padding: 10px;
  padding-bottom: 0px;
  margin-bottom: 0px;
  width: calc(100%-40px);
}

.container-display {
  display: flex;
}

#header {
  align-items: center;
}

#header1 {
  align-items: center;
}

.flex-display {
  display: flex;
}

#mainContainer {
  display: flex;
  flex-direction: column;
}

.notas{
  font-size: 11px; /* Cambiar el tamaño de la letra */
}

.primeraAlerta{
  font-size: 12px; /* Cambiar el tamaño de la letra */
}


.ag-paging-row-summary-panel {
    display: none; /* Oculta el rango de filas (e.g., "1 to 10 of 16") */
}


/* Bordes redondeados de la tabla */
.ag-theme-alpine .ag-root-wrapper {
    border: none !important; /* Elimina el borde externo */
    border-radius: 10px !important; /* Esquinas redondeadas */
    overflow: hidden; /* Evita que el contenido sobresalga de las esquinas redondeadas */
}

/* Mantener bordes entre filas */
.ag-theme-alpine .ag-row {
    border-bottom: 1px solid #ddd !important;
}

/* Cambiar el color de la letra de las columnas */
.ag-theme-alpine .ag-header-cell-label {
    color: rgba(30,71,121,1) !important; /* Cambiar el color del texto de las columnas */
    font-weight: bold; /* Opci�n: hacer el texto m�s llamativo */
}


.plotly .hoverlayer,
.plotly .hoverlayer *,
g.hovertext,
g.hovertext *,
.hoverlayer,
.hoverlayer * {
    transition: none !important;
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -o-transition: none !important;
}

/* ── Admin panel tabs (dcc.Tabs) ──────────────────────────── */
#tabs-admin-panel {
    border-bottom: 2px solid rgb(30, 71, 121);
    margin-bottom: 1rem;
}
#tabs-admin-panel .tab {
    display: inline-block;
    padding: 8px 20px;
    cursor: pointer;
    color: rgb(87, 87, 87);
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: 4px 4px 0 0;
    font-size: 14px;
    font-weight: 500;
}
#tabs-admin-panel .tab:hover {
    color: rgb(30, 71, 121);
    background-color: rgb(245, 245, 245);
}
#tabs-admin-panel .tab--selected {
    color: rgb(30, 71, 121);
    background-color: white;
    border-color: rgb(30, 71, 121) rgb(30, 71, 121) white;
    font-weight: 700;
}
#tabs-admin-panel-parent {
    width: 100%;
}
#tabs-admin-panel.tab-container {
    display: flex;
    flex-direction: row;
    width: 100%;
    border-bottom: 2px solid rgb(30, 71, 121);
    margin-bottom: 1.5rem;
    gap: 4px;
}
#tabs-admin-panel .tab {
    flex: 0 0 auto;
}

