/* *********************************  NAV BAR Y RESPONSIVIDAD *********************************  */

.navbar {
    background-color: #66C2D0;
    height: 120px;
    margin: 10px;
    border-radius: 16px;
    padding: 0.1rem;
    position: static;
  }
  
  .navbar-brand {
    font-weight: 500;
    color: #006e7e ;
    font-size: 24px;
    transition: 0.3s color;
  }
  
  .navbar-toggler {
    border: none;
    padding: 0.1rem;
    width: auto;
    font-size: 1.26rem;
    margin-right: 10px;
  }
  
  .nav-link {
    color: #006b7b;
    font-weight: 500;
    position: relative;
  }
  
  .navbar-toggler:focus,
  .navbar-toggler:hover,
  .btn-close:focus,
  .btn-close:hover {
    background-color: transparent;
    color: inherit;
    box-shadow: none;
    outline: none;
  }
  
  .nav-link:hover,
  .nav-link.active {
    color: #fafafa;
  }
  
  @media (min-width: 991px) {
    .nav-link::before {
      content: "";
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 100%;
      height: 2px;
      background-color: #006e7e ;
      visibility: hidden;
      transition: 0.3s ease-in-out;
    }
  
    .offcanvas-footer {
      display: none;
    }
    .nav-link:hover::before,
    .nav-link.active::before {
      width: 100%;
      visibility: visible;
    }
  }
  
  @media (max-width: 991px) {
    .offcanvas {
      text-align: center;
      height: auto;
      max-width: 220px;
    }
  
    .offcanvas-header {
      justify-content: center;
      background-color: #fafafa;
      padding: 1.25rem;
    }
  
    .offcanvas-body {
      color: #fafafa;
      background-color: #66C2D0;;
      padding: 0.1rem;
    }

    .navbar-brand {
      font-size: 20px;
    }
  
    .navbar-brand img {
      height: 80px;
    }
  
      .nav-link:hover,
      .nav-link.active {
        color: #c5f0f8 ;
      }
    .nav-link {
      margin-top: 10px;
      font-size: 16px;
      color: #006b7b;
    }
  
    .offcanvas-footer {
      background-color: #66C2D0; ;
      height: 90px;
    }
  }
  
  
  
  /* *****************************************  BODY ****************************************  */
  
  body {
    height: 100vh;
    width: 100vw;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    cursor: url("../IMAGENES/favicon-32x32.png"), auto;
  }
  
  main {
    flex: 1;
    background-image: url("../IMAGENES/Fondi.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  
  /* ***************************************** FOOTER ****************************************  */
  
  
  footer {
    background-color: #66C2D0;
    height: 125px;
    margin: 10px;
    border-radius: 16px;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
  }
  
  .footer-image {
    width: 80%;
    height: auto;
  }
  
  @media (max-width: 900px) {
    footer {
      padding: 0.5rem;
      height: auto;
    }
  
    .footer-image {
      height: 100%;
      width: 100%;
    }
  }
  
  /* ****************************  CONTAINER Y RESPONSIVIDAD ********************************  */
  
  .container {
    margin-top: 2rem;
    background-color: #fff;
    padding: 1.25rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    border-radius: 0.5rem;
    border: none;
    margin-bottom: 2rem;
    width: 97%; 
    max-width: 100vw;
    box-sizing: border-box; 
  }
  .header {
    margin-top: 1.25rem;
    background-color: #006e7e ;
    text-align: center;
    padding: 1rem 0;
    font-family: "Franklin Gothic Medium", "Arial Narrow", Arial, sans-serif;
    color: white;
    font-size: 1.75rem;
    font-weight: bold;
    margin-bottom: 1.25rem;
    border-radius: 0.5rem 0.5rem 0 0;
  }
  
  @media (max-width: 600px) {
    .container {
      max-width: 90%;
    }
  
    .header {
      font-size: 1.5rem;
    }
  
  }
  @media (min-width: 601px) and (max-width: 900px) {
    .container {
      max-width: 90%;
    }
    .header {
      font-size: 1.75rem;
    }
   
  }

/* *********************************** CONTAINER TABLE FOLIOS Y RESPONSIVIDAD *********************************** */
  
/* ************************************************ TABLA FOLIOS  *********************************************** */

.container-table-folios {
  margin-top: 1.5625rem;
  display: flex;
  justify-content: center;
  max-height: 450px;
  overflow-y: auto;
}

.container-table-folios table {
  width: 100%;
  border-collapse: collapse;
  text-align: center;
}
.selected {
  background: linear-gradient(to right, #04505c, #1b7f8a); 
 
} 
.selected input {
  background:#1b7f8a; 
  color: white; 
  border: none;
}
.container-table-folios th,
.container-table-folios td {
  width: 21%;
  font-size: medium;
  text-align: center;
  border: 1.5px solid #006e7e;
  padding: 4px;
  word-wrap: break-word;
  overflow: hidden;
}
.container-table-folios th {
  border: 1.5px solid #006e7e;
  background-color: #fff;
  position: sticky;
  top: 0;
  z-index: 1; 
}
.container-table-folios input {
  text-align: center;
  width: 100%;
  padding: 0.5px;
  border: none;
  border-radius: 4px;
  outline: none;
}

/****************************** RESPONSIVIDAD ****************************/
@media (max-width: 550px) {
    .container-table-folios table {
        display: block;
        overflow-x: auto;
    }
    .container-table-folios input {
        width: 150px;
    }
    .container-table-folios th,
    .container-table-folios td {
        white-space: nowrap;
        font-size: 0.850rem;
    }
}
@media (min-width: 551px) and (max-width: 767px) {
  .container-table-folios table {
      display: block;
      overflow-x: auto;
  }
  .container-table-folios input {
      width: 150px;
  }
  .container-table-folios th,
  .container-table-folios td {
      white-space: nowrap;
      font-size: 0.900rem;
  }
}
@media (min-width: 768px) and (max-width: 1000px) {
  .container-table-folios th,
  .container-table-folios td {
      width: 1000px;
      white-space: nowrap;
      font-size: 1rem;
  }
  .container-table-folios input {
      width: 150px;
  }
  .container-table-folios table {
      display: block;
      overflow-x: auto;
      width: 100%;
  }
}

/* ************************************** CONTAINER DATA ROUTE Y RESPONSIVIDAD ********************************** */
  
/* *********************************************** LABELS AND INPUTS  ******************************************* */

.container-data-route { 
    margin-top: 1.5625rem;
    display: grid;
    grid-template-columns: 1fr 1fr; 
    gap: 1rem;
    margin-bottom: 1.2rem;
  }
  
  .container-data-route label {
    height: 2.1875rem;
  }
  
  .container-data-route input, select {
    height: 2.1875rem;
    text-align: center;
    width: 70%;
    border: 1px solid #006e7e;
    border-radius: 0.3125rem;
  }
  
  .container-data-route .column2 {
    align-items: center;
    display: flex;
    flex-direction: column;
  }
  
  .container-data-route .column1 {
    align-items: center;
    display: flex;
    flex-direction: column;
  }

  @media (max-width: 550px) {
    .container-data-route {
      grid-template-columns: 1fr 1fr;
      font-size: 0.850rem;
      gap: 10px;
    }
    .container-data-route input, .container-data-route select {
      width: 100%;
    }
  }

  @media (min-width: 551px) and (max-width: 767px) {
    .container-data-route {
      grid-template-columns: 1fr 1fr;
      font-size: 0.900rem;
      gap: 10px;
    }
    .container-data-route input, .container-data-route select {
      width: 100%;
    }
  }
  
  @media (min-width: 768px) and (max-width: 1000px) {
    .container-data-route {
      grid-template-columns: 1fr 1fr;
      font-size: 1rem;
      gap: 10px;
    }
    .container-data-route input, .container-data-route select {
      width: 95%;
    }
  }
  
/* ************************************ CONTAINER DATA DELIVERY Y RESPONSIVIDAD ********************************* */
  
/* *********************************************** LABELS AND INPUTS  ******************************************* */

.container-data-delivery {
  margin-top: 1.5625rem;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1.2rem;
}

.container-data-delivery label {
  height: 2.1875rem;
}

.container-data-delivery input {
  height: 2.1875rem;
  text-align: center;
  width: 90%;
  border: 1px solid #006e7e;
  border-radius: 0.3125rem;
}

.container-data-delivery .column1 {
  align-items: center;
  display: flex;
  flex-direction: column;
}

.container-data-delivery .column2 {
  align-items: center;
  display: flex;
  flex-direction: column;
}

.container-data-delivery .column3 {
  align-items: center;
  display: flex;
  flex-direction: column;
}

.container-data-delivery .column4 {
  align-items: center;
  display: flex;
  flex-direction: column;
}
@media (max-width: 550px) {
  .container-data-delivery {
    display: grid;
    grid-template-columns: 1fr 1fr;
    font-size: 0.850rem;
    gap: 10px;
  }
  .container-data-delivery input {
    width: 100%;
  }

  .container-data-delivery .column1 {
    grid-column: 1;
  }

  .container-data-delivery .column2 {
    grid-column: 2;
  }

  .container-data-delivery .column3 {
    grid-column: 1;
  }

  .container-data-delivery .column4 {
    grid-column: 2;
  }

}
@media (min-width: 551px) and (max-width: 767px) {
  .container-data-delivery {
    display: grid;
    grid-template-columns: 1fr 1fr;
    font-size: 0.900rem;
    gap: 10px;
  }

  .container-data-delivery input {
    width: 100%;
  }

  .container-data-delivery .column1 {
    grid-column: 1;
  }

  .container-data-delivery .column2 {
    grid-column: 2;
  }

  .container-data-delivery .column3 {
    grid-column: 1;
  }

  .container-data-delivery .column4 {
    grid-column: 2;
  }
}
@media (min-width: 768px) and (max-width: 1000px) {
  .container-data-delivery {
    display: grid;
    grid-template-columns: 1fr 1fr;
    font-size: 1rem;
    gap: 10px;
  }
  .container-data-delivery input {
    width: 95%;
  }

  .container-data-delivery .column1 {
    grid-column: 1;
  }

  .container-data-delivery .column2 {
    grid-column: 2;
  }

  .container-data-delivery .column3 {
    grid-column: 1;
  }

  .container-data-delivery .column4 {
    grid-column: 2;
  }
}

/* ********************************* CONTAINER TABLE DELIVERY Y RESPONSIVIDAD *********************************** */
  
/* ********************************************** TABLA DELIVERY  *********************************************** */

.container-table-delivery {
  margin-top: 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.container-table-delivery table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed; 
  text-align: center;
}
.container-table-delivery th,
.container-table-delivery td {
  width: 21%;
  font-size: medium;
  text-align: center;
  border: 1.5px solid #006e7e;
  padding: 4px;
  word-wrap: break-word;
  overflow: hidden;
}
.container-table-delivery input {
  text-align: center;
  width: 100%;
  padding: 0.5px;
  border: none;
  border-radius: 4px;
  outline: none;
}

/****************************** RESPONSIVIDAD ****************************/

@media (max-width: 550px) {
  .container-table-delivery table {
      display: block;
      overflow-x: auto;
  }
  .container-table-delivery input {
      width: 150px;
  }
  .container-table-delivery th,
  .container-table-delivery td {
      white-space: nowrap;
      font-size: 0.850rem;
  }
}
@media (min-width: 551px) and (max-width: 767px) {
  .container-table-delivery table {
      display: block;
      overflow-x: auto;
  }
  .container-table-delivery input {
    width: 150px;
  }
  .container-table-delivery th, 
  .container-table-delivery td {
    white-space: nowrap;
    font-size:  0.900rem;
  }
}
@media (min-width: 768px) and (max-width: 1000px) {
  .container-table-delivery table {
      display: block;
      overflow-x: auto;
  }
  .container-table-delivery input {
    width: 150px;
  }
  .container-table-delivery th, 
  .container-table-delivery td {
    white-space: nowrap;
    font-size: 1rem;
  }
}
/* ************************************* CONTAINER GUIDE Y RESPONSIVIDAD **************************************** */
  
/* ******************************************** CONTENEDOR GUIDE  *********************************************** */
.container-data-guide { 
  margin-top: 1.5625rem;
  display: flex;
  margin-bottom: 1.2rem;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}
.container-data-guide label {
  height: 2.1875rem;
}
.container-data-guide input {
  height: 2.1875rem;
  text-align: center;
  width: 25%;
  border: 1px solid #006e7e;
  border-radius: 0.3125rem;
}

@media (max-width: 550px) {
  .container-data-guide {
    font-size: 0.850rem;
  }
  .container-data-guide input {
    width: 70%;
  }
}
@media (min-width: 551px) and (max-width: 767px) {
  .container-data-guide {
    text-align: center;
    font-size: 0.900rem;
  }
  .container-data-guide input {
    width: 60%;
  }
}
@media (min-width: 768px) and (max-width: 1000px) {
  .container-data-guide {
    font-size: 1rem;
  }
  .container-data-guide input {
    width: 45%
  }
}

/* ************************************ CONTAINER BUTTON Y RESPONSIVIDAD **************************************** */
  
/* ******************************************* CONTENEDOR BUTTON  *********************************************** */

.button {
  margin-top: 1.5625rem;
  display: flex;
  justify-content: space-around;
  padding: 10px;
}

.button button {
  padding: 10px 15px;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s;
}

.button button {
  background-color: #006e7e ;
}

.button button:hover {
  background-color: #04505c ;
}

@media (max-width: 600px) {
  .buttonpdf {
    font-size: 0.9rem;
  }
  
  .button input {
    width: 100%;
    font-size: 0.9rem; 
  }
}

@media (min-width: 100px) and (max-width: 600px) {
  .button {
    display: grid;
    text-align: center;
  }

  .button label {
    font-size: 0.85rem;
    margin-bottom: 10px;
  }
}