body {
    font-family: Arial, sans-serif;
    padding-top: 160px; /* Espacio para la barra fija */
}

.search-bar {
    display: flex;
    align-items: center;
}
.search-bar input[type="text"] {
    padding: 5px;
    width: 300px;
}
.search-bar button {
    background-color: #ffa500;
    border: none;
    padding: 6px;
}


/*##############################*/
/*modal */
.modal-right {
    position: fixed;
    right: 0;
    top: 0;
    height: 100%;
    width: 40%;
    background-color: white;
    box-shadow: -2px 0 5px rgba(0, 0, 0, 0.5);
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out;
    z-index: 1300; /* Mayor que el z-index del header y nav */
}
.modal-right.show {
    transform: translateX(0);
}

.modal-body {
    overflow-y: auto;
    max-height: calc(100vh - 230px); /* scroll para body del modal */
    padding-bottom: 60px; /* Espacio para el modal-footer */
}

.no-scroll { /* scroll de la ventana principal */
    overflow: hidden;
}

.modal-footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #f8e7a4;
    padding: 30px;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
}

.img-40 {
    width: 60px;
    height: 60px;
}

@media (max-width: 992px) {
    .modal-right {
        width: 80%;
    }
}

@media (max-width: 576px) {
    .modal-right {
        width: 100%;
    }
}
.cart-icon {
    position: relative;
    margin-left: 20px;
    margin-right: 20px; /* Margen derecho */
}

.cart-icon .bi {
    font-size: 30px; /* Tamaño del icono */
    color: #ffcc00; /* Color del icono */
}
.cart-icon .cart-count {
    position: absolute;
    top: -10px;
    right: -10px;
    background-color: red;
    color: white;
    border-radius: 50%;
    padding: 2px 6px;
    font-size: 14px;
}
/*########################################*/

.sidebar {
width: 270px;
position: fixed;
top: 160px; /* Ajusta esto según la posición de tu encabezado */
left: 0;
background-color: #f8f9fa;
padding: 10px;
box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
z-index: 2000; 
transition: transform 0.3s ease-in-out;
transform: translateX(-100%);
overflow-y: auto; /* Habilitar el scroll vertical */
max-height: calc(100vh - 160px); /* Altura máxima de la barra lateral */

}

.sidebar.show {
transform: translateX(0);
/* Muestra la barra lateral */
}

.categories {
list-style: none;
padding: 0;
margin: 0;
}

.category-item {
margin-bottom: 10px;
}

.category-item > a {
text-decoration: none;
color: #000;
display: block;
padding: 10px;
background-color: #e9ecef;
border-radius: 5px;
}

.category-item > a:hover {
background-color: #ced4da;
}

.subcategories {
list-style: none;
padding: 0;
margin: 10px 0 0 15px;
display: none;
}

.subcategories li {
margin-bottom: 5px;
}

.subcategories li a {
text-decoration: none;
color: #000;
display: block;
padding: 5px;
background-color: #eef7cc; /*#f1f1f1;*/
border-radius: 5px;
}

.subcategories li a:hover {
background-color: #e2e6ea;
}

.category-item:hover .subcategories {
display: block;
}
.sidebar-toggle {
    left: 10px;
    background-color: red;
    color: white;
    border: none;
    padding: 10px;
    cursor: pointer;
    border-radius: 5px;
}

/*****/

  /* Override Bootstrap styles with !important */
  /*
  #formRegistro .form-floating {
    margin-bottom: 10px !important;
  }
  
  #formRegistro .form-control {
    height: 45px !important;
  }
*/
  /*producto.php*/

  .product-image {
    max-width: 100%;
    height: auto;
}

.price {
    font-size: 1.5rem;
    font-weight: bold;
    color: #d9534f;
}

.original-price {
    text-decoration: line-through;
    color: #777;
    margin-left: 10px;
}

.characteristics {
    margin-top: 20px;
}

.characteristics ul {
    padding-left: 20px;
}

.quantity-selector {
    display: flex;
    align-items: center;
    margin-top: 20px;
}

.quantity-selector input {
    width: 50px;
    text-align: center;
    margin: 0 10px;
}
