/* QUEDA ASI JUSCEIN 13 de JULIO 2023 */
* {
  margin: 1;
  padding: 0;
  box-sizing: border-box;
}

.vertimedio{
  vertical-align: middle;
}

.inpux{
  border-radius: 5px;
    height: 1.6em;
    font: inherit;
    box-sizing: border-box;
    padding: 0.1em 0.2em;

}


.textoin{

    font: inherit;
  padding: 0.2em 0.5em;

}

table { 
    border-spacing: 2px;
    border-collapse: separate;
    font: inherit;
}

td { 
    padding: 2px;
}

th { 
  padding: 2px;
}




/*********USAR ESTO EN LUGAR DE ONMOUSEOVER ONMOUSEOUT ************/
.celda{
    background-color:white;
 }
 .celda:hover{
    background-color:rgb(160, 244, 244);
 }

body {
    background: #ffffff; /* antes background: #a7aaee;*/
    color: #333;
    font-weight: 400;
    font-family: 'Barlow', sans-serif;
    font-size: 1.2rem;
    line-height: 1.6em; /*INTERLINEADO */
    margin: 0; /* se pega a los costados */
}

/* ESTO ES EL CONTENIDO DEBE TENER UN PADDING Para que el Menu NO lo tape */
.main{
    padding-top: 1rem ;
}

.botonex {
	/*background-color: #4CAF50; */
	background-color:rgb(11, 11, 131);
	border: none;
	border-radius: 5px;
	color: #ffffff;
	cursor: pointer;
	font-size: 16px;
	padding: 10px;
	/*width: 100%;*/
}

header {
  background-color: #c3c2c2;
}

.footer{
    background-color: #f2f2f2;
    padding: 4rem 0;
    text-align: center;
    margin-top: 6rem;

}

header .container {
  position: relative;
  /*max-width: 960px;*/
  padding: 15px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
header .container .brand h2 {
  color: #FFF;
  font-size: 28px;
  font-weight: 900;
  
}
header .container .brand h2 span {
  color: #444444;
  font-weight: 400;

}

header .container .mobile-nav {
    /*OCULTA LA PALABRA MENU */
  display: none;
}
header .container .mobile-nav .open-menu {
  color: #FFF;
  text-decoration: none;
  
}
@media screen and (max-width: 767px) {
  header .container .mobile-nav {
    display: block;
  }
}
header .container .navbar .menu {
  display: flex;
  list-style-type: none;
}
header .container .navbar .menu .menu-item {
  position: relative;
  border-radius: 5px;
}
header .container .navbar .menu .menu-item a {
  display: block;
  color: #FFF;
  text-decoration: none;
  padding: 10px 25px;
  border-radius: 5px;
}
header .container .navbar .menu .menu-item a:hover {
  color: #000000;
  background-color: #939090;
}
header .container .navbar .menu .menu-item.has-sub-menu > a {
  position: relative;
  padding-right: 35px;
  border-radius: 5px;
}
/*ESTO SOLAMENTE ES PARA EL SIGNO + */
header .container .navbar .menu .menu-item.has-sub-menu > a:after {
  content: "+";
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  color: #FFF;
  font-size: 18px;
  font-weight: 500;
  border-radius: 5px;
}
header .container .navbar .menu .menu-item.has-sub-menu > a:hover:after {
  color: #000000;
}
header .container .navbar .menu .menu-item.has-sub-menu .sub-menu {
 /*ESTE ES EL BLOQUE DE DEBO ACORTAR */
  position: absolute;
  z-index: 999;
  opacity: 0;
  transform: translateY(-20px);
  pointer-events: none;
  transition: 0.3s ease-out;
  min-width: 50%;
  width: max-content;
  background-color: #4f4f4f;
  list-style-type: none;
  border-radius: 5px;
}


header .container .navbar .menu .menu-item.has-sub-menu .sub-menu .menu-item {
  width: 100%;
  
}

header .container .navbar .menu .menu-item.has-sub-menu:hover > .sub-menu {
  opacity: 1;
  transform: translateY(0);
  pointer-events: all;
}
header .container .navbar .menu .menu-item.has-sub-menu:hover > .sub-menu .sub-menu {
  top: 0;
  right: 100%;
}
header .container .navbar .close-menu {
  display: none;
  color: #FFF;
  text-decoration: none;
  text-align: center;
}
@media screen and (max-width: 767px) {
  header .container .navbar .close-menu {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  header .container .navbar {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    min-height: 100vh;
    z-index: 999;
    background-color: #222;
    opacity: 0;
    pointer-events: none;
    transition: 0.3s ease-out;
  }
  header .container .navbar.is-active {
    opacity: 1;
    pointer-events: all;
  }
  header .container .navbar .menu {
    flex-direction: column;
  }
  header .container .navbar .menu .has-sub-menu > .sub-menu {
    display: none;
    position: relative;
  }
  header .container .navbar .menu .has-sub-menu > .sub-menu .sub-menu {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
  }
  header .container .navbar .menu .has-sub-menu:hover > .sub-menu {
    display: block;
  }
}

main section {
  padding-top: 50px;
  padding-bottom: 50px;
}
main section h1 {
  color: #868585;
  font-size: 48px;
  font-weight: 500;
  text-align: center;
  margin-bottom: 30px;
}
main section h2 {
    color: #868585;
    font-size: 30px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 30px;
  }

main section .image-wrap {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
}
main section .image-wrap .image {
  display: block;
  width: 100%;
  max-width: 480px;
}
main section .content-wrap {
  display: block;
  max-width: 768px;
  margin: 0 auto;
}
main section .content-wrap p {
  color: #676767;
  font-size: 18px;
  font-weight: 400;
}


/* Corrige el último menú (Docs) para que no se salga de pantalla */
header .container .navbar .menu > li.has-sub-menu:last-child > .sub-menu {
  right: 0;
  left: auto;
}
/*# sourceMappingURL=main.css.map */

/*PARA TABLAS DE REPORTES */
.tabla-estilo {
    /*border-collapse: collapse;   /* 🔥 elimina doble borde */
    border: 1px solid #9e9e9e;      /* borde exterior gris */
}

.tabla-estilo th,
.tabla-estilo td {
    border: 1px solid #ccc;      /* bordes internos */
    padding: 5px;                /* espacio interno */
}


/* 1. Controlamos el contenedor de Reportes de Ventas */
header .container .navbar .menu .menu-item .sub-menu .sub-menu {
    width: 550px !important;    /* Ancho para las 2 columnas */
    display: flex !important;
    flex-wrap: wrap !important;
    flex-direction: row !important;
    padding: 10px !important;
    
    /* POSICIONAMIENTO: Lo movemos a la izquierda para que no se salga de la pantalla */
    left: auto !important; 
    right: 100% !important;     /* Empieza donde termina el menú anterior, hacia la izquierda */
    top: 0 !important;
    
    box-shadow: -5px 5px 15px rgba(0,0,0,0.3) !important; /* Sombra para que se distinga del fondo */
}

/* //////////////////// MENUS DE TERCER NIVEL /////////// */


/* ============================================================
   ESTILOS SOLO PARA COMPUTADORAS (Pantallas de más de 768px)
   ============================================================ */
@media screen and (min-width: 768px) {
    
    /* Menús de 3er nivel básicos (como Hitos) */
    header .container .navbar .menu .menu-item .sub-menu .menu-item .sub-menu {
        display: block !important;
        width: max-content !important; 
        min-width: 180px !important;
        right: 100% !important;
        left: auto !important;
        background-color: #4f4f4f !important;
        padding: 5px !important;
        border-radius: 5px;
    }

    /* Menú de Reportes (Dos columnas) */
    header .container .navbar .menu .menu-item .sub-menu .menu-item .sub-menu:has(li:nth-child(6)) {
        display: flex !important;
        flex-wrap: wrap !important;
        flex-direction: column !important;
        height: 380px !important;
        width: auto !important;
        min-width: 380px !important; /* Ajustado para ser lo más estrecho posible */
    }

    /* Columnas internas de Reportes */
    header .container .navbar .menu .menu-item .sub-menu .sub-menu:has(li:nth-child(6)) .menu-item {
        width: 190px !important; /* Ancho de cada columna */
    }
}

/* ============================================================
   ESTILOS GENERALES (Afectan a todos, pero se ajustan en móvil)
   ============================================================ */
header .container .navbar .menu .menu-item .sub-menu .sub-menu .menu-item a {
    padding: 8px 12px !important;
    font-size: 1.2rem !important; 
    font-family: 'Barlow', sans-serif !important;
    line-height: 1.3em !important;
    color: #FFF !important;
    white-space: nowrap !important;
    display: block !important;
    border-bottom: 1px solid #555 !important;
}

/* En móvil, eliminamos las dos columnas y el ancho fijo */
@media screen and (max-width: 767px) {
    header .container .navbar .menu .menu-item .sub-menu .sub-menu {
        width: 100% !important;
        position: relative !important;
        right: 0 !important;
        left: 0 !important;
        display: block !important;
        height: auto !important; /* Que crezca hacia abajo normalmente */
        column-count: 1 !important;
    }
    
    header .container .navbar .menu .menu-item .sub-menu .sub-menu .menu-item {
        width: 100% !important;
    }
}