body {
  background: #000;
  color: #fff;
}

/* Estilos para el cuerpo en pantallas pequeñas (hasta 767px de ancho) */
@media (max-width: 767px) {
    body {
        background-color: #333; /* Fondo oscuro para pantallas pequeñas */
        color: #fff; /* Texto blanco para pantallas pequeñas */
    }
}

/* ===== BANNER PARA USUARIOS NO AUTENTICADOS ===== */
.unauth-banner {
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  color: white;
  padding: 16px 24px;
  box-shadow: 0 4px 12px rgba(59, 130, 246, 0.25);
  border-bottom: 2px solid #1d4ed8;
  z-index: 999;
  animation: slideDownBanner 0.4s ease-out;
}

@keyframes slideDownBanner {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.unauth-banner-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  max-width: 1200px;
  margin: 0 auto;
  flex-wrap: wrap;
}

.unauth-banner-text {
  flex: 1;
  min-width: 250px;
}

.unauth-banner-title {
  margin: 0;
  font-weight: 700;
  font-size: 1.3rem;
  margin-bottom: 4px;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.unauth-banner-subtitle {
  margin: 0;
  font-size: 0.95rem;
  opacity: 0.95;
  font-weight: 400;
}

.unauth-banner-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.unauth-banner .btn {
  font-weight: 600;
  padding: 8px 18px;
  font-size: 0.9rem;
  border-radius: 4px;
  transition: all 0.3s ease;
  white-space: nowrap;
}

.unauth-banner .btn-light {
  background-color: white;
  color: #ec1919;
  border: none;
}

.unauth-banner .btn-light:hover {
  background-color: #f0f0f0;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.unauth-banner .btn-outline-light {
  color: white;
  border: 2px solid white;
  background: transparent;
}

.unauth-banner .btn-outline-light:hover {
  background-color: rgba(255, 255, 255, 0.1);
  transform: translateY(-2px);
}

.unauth-banner .btn-close-white {
  flex-shrink: 0;
  opacity: 0.8;
  transition: opacity 0.2s;
}

.unauth-banner .btn-close-white:hover {
  opacity: 1;
}

/* Responsivo para móviles */
@media (max-width: 576px) {
  .unauth-banner {
    padding: 12px 16px;
  }

  .unauth-banner-content {
    flex-direction: column;
    gap: 12px;
  }

  .unauth-banner-text {
    text-align: center;
    min-width: 100%;
  }

  .unauth-banner-title {
    font-size: 1.1rem;
  }

  .unauth-banner-subtitle {
    font-size: 0.85rem;
  }

  .unauth-banner-actions {
    width: 100%;
    justify-content: center;
  }

  .unauth-banner .btn {
    flex: 1;
    min-width: 120px;
  }
}

.container {
  background: rgb(26, 26, 26);
}



#mensaje_correo_electronico {
  font-size: small;
  
  margin-bottom: 20px;
  margin-right: 20px;
}

#ambito_actual {
  font-size: small;
  
  margin-bottom: 20px;
  margin-right: 20px;
}

#mensaje_cuentaBroker {
  font-size: small;  
  margin-bottom: 20px;
  margin-right: 20px;
}
#mensaje_simulado {
  font-size: small; 
  margin-bottom: 20px;
  margin-right: 20px;
}
#modal {
  display: none; /* Ocultar el modal de forma predeterminada */
  position: fixed;
  z-index: 1;
  left: 0;
}

.dz-message {
    text-align: center;
    margin: 20px 0;
}


/* Estilos para navbar-toggler - icono hamburguesa blanco */
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23ffffff' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
  filter: brightness(0) invert(1) !important;
}

.nav-link.active {
  /*/background-color: #007bff; /* Color de fondo para elementos activos */
  color: #ec1919; /* Color de texto para elementos activos */
}

.nav-link {
  /*background-color: #f8f9fa; /* Color de fondo para elementos inactivos */
  color:  rgb(128, 128, 128); /* Color de texto para elementos inactivos */
}

.nav-item button:hover {
  background-color: blue;
}
/*estilo para botones index*/
.card-button {
  background-color: #007bff;
  color: #fff;
  border-radius: 5px;
  padding: 10px 20px;
  text-decoration: none;
  display: inline-block;
  text-align: center;
}

.card-button:hover {
  background-color: #0056b3;
}

.long-button {
  width: 100%; /* Hace que el botón ocupe el 100% del ancho del contenedor padre */
  padding: 10px; /* Ajusta el padding para hacerlo más grande */
  font-size: 16px; /* Ajusta el tamaño de la fuente si es necesario */
}


#labelCP {
  vertical-align: middle;
  line-height: 1.5; /* Ajusta según el tamaño del texto de los enlaces */
  padding-top: 8px; /* Puedes ajustar este valor */
}


/* ===== SOLO COLORES – Tema claro corporativo ===== */
:root{
  --bg:#f7f9fc;
  --surface:#ffffff;
  --text:#1f2937;
  --muted:#6b7280;
  --primary:#1f4e79;
  --primary-dark:#153a5c;
  --accent:#0f2238;
  --border:#e5e7eb;
   --bg:#f7f9fc;   /* ← AQUÍ cambias el fondo “global” */
  --surface:#ffffff;  /* ← y el de .container */
}

/* Fondo y texto global */
body {
  background: var(--bg) !important;

}

/* Pantallas pequeñas: mantener claro (no más fondo #333) */
@media (max-width: 767px) {
  body {
    background-color: var(--bg) !important;
    
  }
}

/* Contenedor principal claro */
.container {
  background: var(--surface) !important;
}

/* Mensajes / chips informativos: solo color de texto */
#mensaje_correo_electronico,
#ambito_actual,
#mensaje_cuentaBroker,
#mensaje_simulado {
  color: var(--text) !important;
}

/* Modal: sin cambios de layout, solo aseguramos texto */
#modal { color: var(--text) !important; }

/* Dropzone mensaje */
.dz-message { color: var(--muted) !important; }

/* Navegación: activo / inactivo */
.nav-link.active {
  color: var(--primary) !important;         /* antes #ec1919 */
}
.nav-link {
  color: var(--muted) !important;           /* antes rgb(128,128,128) */
}
.nav-item button:hover {
  background-color: var(--primary) !important;  /* antes blue crudo */
  color: #fff !important;
}

/* Botones index */
.card-button {
  background-color: var(--primary) !important;  /* antes #007bff */
  color: #fff !important;
  border-radius: 5px;
}
.card-button:hover {
  background-color: var(--primary-dark) !important; /* antes #0056b3 */
}

/* Botón largo: sin cambios estructurales */
.long-button {
  width: 100%;
  padding: 10px;
  font-size: 16px;
}

/* Label CP: solo color de texto secundario */
#labelCP {
  vertical-align: middle;
  line-height: 1.5;
  padding-top: 8px;
  color: var(--muted) !important;
}
.nav-tabs .nav-link.active {
  color: #000 !important;
}
