.bi {
  display: inline-block;
  width: 1rem;
  height: 1rem;
}

/*
 * Sidebar
 */

@media (min-width: 768px) {
  .sidebar .offcanvas-lg {
    position: -webkit-sticky;
    position: sticky;
    top: 48px;
  }
  .navbar-search {
    display: block;
  }
}

.sidebar .nav-link {
  font-size: .875rem;
  font-weight: 500;
}

.sidebar .nav-link.active {
  color: #2470dc;
}

.sidebar-heading {
  font-size: .75rem;
}

/*
 * Navbar
 */

.navbar-brand {
  padding-top: .75rem;
  padding-bottom: .75rem;
  background-color: rgba(0, 0, 0, .25);
  box-shadow: inset -1px 0 0 rgba(0, 0, 0, .25);
}

.navbar .form-control {
  padding: .75rem 1rem;
}



.label-row {
  display: flex;
  justify-content: space-between;
  margin-top: 8px;
  font-weight: bold;
}
.percentage-bar {
  width: 100%;
  background: #eee;
  height: 10px;
  margin-bottom: 10px;
  border-radius: 4px;
}
.percentage-fill {
  height: 100%;
  border-radius: 4px;
}
.buscar {
  width: auto;
  height: auto;
  background: #FFFFFF;
  box-shadow: 0px 187px 75px rgba(0, 0, 0, 0.01), 0px 105px 63px rgba(0, 0, 0, 0.05), 0px 47px 47px rgba(0, 0, 0, 0.09), 0px 12px 26px rgba(0, 0, 0, 0.1), 0px 0px 0px rgba(0, 0, 0, 0.1);
  border-radius: 26px;
}

.form {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 20px;
}




/* Estilos del dropdown */
.nav-item.dropdown {
  position: relative;
}

/* Estilo del enlace principal */
.nav-item .nav-link {
  padding: 16px 20px;
  color: #333;
  font-size: 16px;
  font-weight: 500;
  background-color: #f7f7f7;
  border-radius: 12px;
  transition: all 0.3s ease;
}

/* Efecto hover sobre el enlace principal */
.nav-item .nav-link:hover {
  background-color:rgb(0, 0, 0);
  color: white;
}

/* Estilo de los elementos del menú */
.dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  min-width: 200px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 8px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* Mostrar el menú al estar en el hover */
.nav-item.dropdown:hover .dropdown-menu {
  display: block;
  opacity: 1;
}

/* Estilo de cada elemento dentro del dropdown */
.dropdown-item {
  padding: 10px 15px;
  color: #333;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  border-radius: 4px;
  transition: all 0.3s ease;
}

/* Efecto hover sobre los elementos del menú */
.dropdown-item:hover {
  background-color: #f1f1f1;
  color: #007bff;
}

/* Efecto cuando el menú se muestra en una pantalla pequeña */
@media (max-width: 768px) {
  .dropdown-menu {
    min-width: auto;
    position: static;
    box-shadow: none;
  }
  .nav-item.dropdown {
    display: block;
    text-align: center;
  }
}


/* From Uiverse.io by zanina-yassine */ 
.buscar {
width: auto;
height: auto;
background: #FFFFFF;
box-shadow: 0px 187px 75px rgba(0, 0, 0, 0.01), 0px 105px 63px rgba(0, 0, 0, 0.05), 0px 47px 47px rgba(0, 0, 0, 0.09), 0px 12px 26px rgba(0, 0, 0, 0.1), 0px 0px 0px rgba(0, 0, 0, 0.1);
border-radius: 26px;
}

.form {
display: flex;
flex-direction: column;
gap: 20px;
padding: 20px;
}

.payment--options {
width: calc(100% - 40px);
display: grid;
grid-template-columns: 33% 34% 33%;
gap: 20px;
padding: 10px;
}

.payment--options button {
height: 55px;
background: #F2F2F2;
border-radius: 11px;
padding: 0;
border: 0;
outline: none;
}

.payment--options button svg {
height: 18px;
}

.payment--options button:last-child svg {
height: 22px;
}

.separator {
width: calc(100% - 20px);
display: grid;
grid-template-columns: 1fr 2fr 1fr;
gap: 10px;
color: #8B8E98;
margin: 0 10px;
}

.separator > p {
word-break: keep-all;
display: block;
text-align: center;
font-weight: 600;
font-size: 11px;
margin: auto;
}

.separator .line {
display: inline-block;
width: 100%;
height: 1px;
border: 0;
background-color: #e8e8e8;
margin: auto;
}

.credit-card-info--form {
display: flex;
flex-direction: column;
gap: 15px;
}

.input_container {
width: 100%;
height: fit-content;
display: flex;
flex-direction: column;
gap: 5px;
}

.split {
display: grid;
grid-template-columns: 4fr 2fr;
gap: 15px;
}

.split input {
width: 100%;
}

.input_label {
font-size: 10px;
color: #8B8E98;
font-weight: 600;
}

.input_field {
width: auto;
height: 40px;
padding: 0 0 0 16px;
border-radius: 9px;
outline: none;
background-color: #F2F2F2;
border: 1px solid #e5e5e500;
transition: all 0.3s cubic-bezier(0.15, 0.83, 0.66, 1);
}

.input_field:focus {
border: 1px solid transparent;
box-shadow: 0px 0px 0px 2px #242424;
background-color: transparent;
}

.purchase--btn {
height: 55px;
background: #F2F2F2;
border-radius: 11px;
border: 0;
outline: none;
color: #ffffff;
font-size: 13px;
font-weight: 700;
background: linear-gradient(180deg, #363636 0%, #1B1B1B 50%, #000000 100%);
box-shadow: 0px 0px 0px 0px #FFFFFF, 0px 0px 0px 0px #000000;
transition: all 0.3s cubic-bezier(0.15, 0.83, 0.66, 1);
}

.purchase--btn:hover {
box-shadow: 0px 0px 0px 2px #FFFFFF, 0px 0px 0px 4px #0000003a;
}

/* Reset input number styles */
.input_field::-webkit-outer-spin-button,
.input_field::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}

.input_field[type=number] {
-moz-appearance: textfield;
}

.form-group {
display: flex;
flex-direction: column;
gap: 6px;
margin-bottom: 15px;
}

.form-group label {
font-size: 12px;
font-weight: 600;
color: #444;
padding-left: 5px;
}

.form-actions {
display: flex;
justify-content: center;
margin-top: 20px;
}


.label-row {
display: flex;
justify-content: space-between;
margin-top: 8px;
font-weight: bold;
}
.percentage-bar {
width: 100%;
background: #eee;
height: 10px;
margin-bottom: 10px;
border-radius: 4px;
}
.percentage-fill {
height: 100%;
border-radius: 4px;
}

/* Estilos generales para el fondo y el contenedor */
.offcanvas-body {
background: #fff; /* Fondo suave con un tono gris claro */
border-radius: 15px;
overflow-y: auto;
padding: 0;
margin-left: 15px;
margin-top: 16px;
margin-bottom: 10px;
}

@media (min-width: 768px) {
  .offcanvas-md .offcanvas-body {
      background-color: #fff !important;
  }
}

/* Estilos para los encabezados */
.sidebar-heading {
font-weight: bold;
color: #333; /* Color oscuro para el texto */
text-transform: uppercase;
letter-spacing: 0.1rem;
margin: 10px 0;
}

.sidebar-heading a {
color: #6c757d;
text-decoration: none;
display: flex;
align-items: center;
padding: 8px 8px 8px 8px;
border-radius: 10px;
transition: all 0.3s ease-in-out;
}

.sidebar-heading a:hover {
background: #d3d3d3; /* Fondo claro al pasar el ratón */
color: #495057;
transform: translateY(-4px);
box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.1), -4px -4px 10px rgba(255, 255, 255, 0.7); /* Efecto neumórfico */
}

/* Estilos para los iconos de los enlaces */
.sidebar-heading svg {
fill: #6c757d;
width: 18px;
height: 18px;
margin-right: 10px;
transition: all 0.3s ease-in-out;
}

/* Estilos de los elementos de la lista */
.nav-item {
margin: 9px 0;
}

.nav-link {
display: flex;
align-items: center;
padding: 16px 20px;
background: #f0f0f0;
border-radius: 12px;
/*box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.05), -4px -4px 10px rgba(255, 255, 255, 0.6);  Fondo suave y sombras */
transition: all 0.3s ease;
color: #495057;
text-decoration: none;
}

.nav-link:hover {
background: #d3d3d3;
color: #343a40;
transform: translateY(-4px);
box-shadow: 6px 6px 12px rgba(0, 0, 0, 0.1), -6px -6px 12px rgba(255, 255, 255, 0.5); /* Efecto de hover neumórfico */
}

.nav-link svg {
width: 20px;
height: 20px;
margin-right: 12px;
}

/* Estilos para los separadores */
hr {
border: 0;
border-top: 1px solid #ced4da;
margin: 20px 0;
}

/* Estilo para las líneas de separación */
.my-3 {
margin-top: 1rem;
margin-bottom: 1rem;
}

/* Estilo adicional para las sombras de los botones */
.nav-link {
border-radius: 12px;
padding: 12px 20px;
background: #f5f7fa;
/* box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1), -5px -5px 10px rgba(255, 255, 255, 0.8); */
}

/* Efectos de hover para modernismo */
.nav-link:hover {
box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.1), -5px -5px 20px rgba(255, 255, 255, 0.8);
background-color: #e9ecef;
/* transform: translateY(-6px); */
}


/* Estilos del dropdown */
.nav-item.dropdown {
position: relative;
padding: 0px 9px;
}

/* Estilo del enlace principal */
.nav-item .nav-link {
  padding: 16px 11px;
color: #333;
font-size: 14px;
font-weight: 500;
background-color: #fff;
border-radius: 12px;
transition: all 0.3s ease;
}

/* Efecto hover sobre el enlace principal */
.nav-item .nav-link:hover {
background-color:rgb(0, 0, 0);
color: white;
}

/* Estilo de los elementos del menú */
.dropdown-menu {
display: none;
position: absolute;
top: 100%;
left: 0;
z-index: 1000;
min-width: 200px;
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.125);
border-radius: 8px;
box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
opacity: 0;
transition: opacity 0.3s ease;
}

/* Mostrar el menú al estar en el hover */
.nav-item.dropdown:hover .dropdown-menu {
display: block;
opacity: 1;
}

/* Estilo de cada elemento dentro del dropdown */
.dropdown-item {
padding: 10px 15px;
color: #333;
font-size: 14px;
font-weight: 400;
text-decoration: none;
border-radius: 4px;
transition: all 0.3s ease;
}

/* Efecto hover sobre los elementos del menú */
.dropdown-item:hover {
background-color: #f1f1f1;
color: #00B9B4;
}

/* Efecto cuando el menú se muestra en una pantalla pequeña */
@media (max-width: 768px) {
.dropdown-menu {
min-width: auto;
position: static;
box-shadow: none;
}
.nav-item.dropdown {
display: block;
text-align: center;
}
}

.titulo {
      color: black;
      padding-left: 18px;
      letter-spacing: 7px;
      text-align: center;
  }

  tbody, td, tfoot, th, thead, tr {
    padding: 4px;
}  

/* tablas de los datos */

body {
  background: #f5f7f8;
  color: #2d2d2d;
  margin: 0;
}

.container {
  max-width: 1200px;
  margin: auto;
}

.card {
  background: #f5f7f8;
  border-radius: 20px;
  box-shadow: 6px 6px 12px #d1d9e6, -6px -6px 12px #ffffff;
  padding: 30px;
  margin-bottom: 40px;
  transition: 0.3s ease all;
}

.card:hover {
  transform: translateY(-3px);
}

.card h2 {
  text-align: center;
  font-size: 1.4rem;
  color: #4a4a4a;
  margin-bottom: 1.2rem;
}

.table {
  width: 100%;
  border-collapse: collapse;
  border-radius: 12px;
  overflow: hidden;
  background: #f1f3f6;
}

.table thead {
  background-color: #e0e4eb;
}

.table th, .table td {
  padding: 14px 18px;
  text-align: left;
  font-size: 0.95rem;
  border-bottom: 1px solid #d4d9e2;
}

.table tbody tr:hover {
  background-color: #e9edf2;
  transition: 0.2s;
}

.table th {
  color: #555;
  font-weight: 600;
}

@media (max-width: 768px) {
  .table th, .table td {
    font-size: 0.85rem;
    padding: 10px;
  }

  .card h2 {
    font-size: 1.2rem;
  }
}

.dropdown-toggle::after {
  content: none;
}

