.fixed-actions-container {
    display: flex;
    gap: 5px; /* Ajusta según sea necesario */
}

.fixed-actions-container button {
    flex-shrink: 0;
}

.custom-modal .modal-dialog {
    max-width: 95%; /* Ajusta el valor según sea necesario */
}

#stockModal {
z-index: 9999;
}

.selectize-input {
border-radius: 0.5rem;
}

.modal {
z-index: 9999; /* Z-index alto para que aparezca encima de otros elementos */
}

.daterangepicker .drp-selected {
    display: none !important;
}


@media (min-width: 1200px) {
    .g-sidenav-hidden .navbar-vertical {
        max-width: 5.8rem !important;
    }
}


.ms-auto.d-flex {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    width: auto;
  }
  
  .ms-auto.d-flex button {
    display: flex;
    align-items: center;
    margin-right: 10px;
  }
  
  .ms-auto.d-flex button i.material-icons,
  .ms-auto.d-flex button .text {
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
  }
  
  .ms-auto.d-flex button:last-child {
    margin-right: 0;
  }
  
  .ms-auto.d-flex i.material-icons {
    margin-right: 5px;
  }
  


.table td,
.table th {
  white-space: nowrap;
}


.sidenav-header {
  display: flex;
  justify-content: center;
  align-items: center;
}

.navbar-vertical .navbar-brand>img, .navbar-vertical .navbar-brand-img {
  max-height: 3rem !important;
}

.sidenav-header .navbar-brand {
  display: flex;
  justify-content: center;
  align-items: center;
}


.logo-container {
  display: flex;
  justify-content: center;
  align-items: center;
}

.logo-image {
  max-height: 3rem !important;
  display: block;
}



/* Para pantallas pequeñas */
@media (max-width: 768px) {
  .alert .d-flex {
      flex-direction: column;  /* Coloca los elementos en columna */
  }

  .alert .flex-grow-1 {
      width: 100%;  /* El select ocupa todo el ancho */
  }

  .alert .btn {
      margin-top: 0px;  /* Un pequeño margen para separar el botón del select */
  }
}

/* Para pantallas grandes */
@media (min-width: 769px) {
  .alert .d-flex {
      flex-direction: row;  /* Mantiene los elementos en fila */
  }
  
  .alert .flex-grow-1 {
      width: auto;  /* El select ocupa solo el espacio necesario */
  }

  .alert .btn {
      margin-top: 0;  /* Sin margen adicional en pantallas grandes */
  }
}


.payment-detail {
  margin-bottom: 5px;  /* Reducir el espacio entre los párrafos */
  text-align: left;   /* Alineación a la derecha */
}

/* Estilos para edición en bulk - Stock normal y Stock mínimo */
.location-stock-item, .location-min-stock-item {
    margin-bottom: 3px !important;
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 4px 6px !important;
    border-radius: 3px !important;
    transition: background-color 0.2s ease !important;
    min-height: 28px !important;
    box-sizing: border-box !important;
    background-color: #f8f9fa !important;
    border: 1px solid #e9ecef !important;
}

.location-stock-item:hover, .location-min-stock-item:hover, .operation-type-by-location-cell .location-operation-item:hover {
    background-color: #f8f9fa !important;
}

.location-stock-item .location-name, .location-min-stock-item .location-name, .operation-type-by-location-cell .location-operation-item .location-name {
    font-weight: 500 !important;
    min-width: 80px !important;
    font-size: 13px !important;
    color: #6c757d !important;
}

/* Asegurar estilos específicos */
.location-stock-item .location-name {
    font-weight: 500;
    min-width: 80px;
    font-size: 13px;
    color: #6c757d;
}

.location-min-stock-item .location-name {
    font-weight: 500;
    min-width: 80px;
    font-size: 13px;
    color: #6c757d;
}

/* Estilos para el display - UNIFICADOS para stock, min-stock y operation */
.location-stock-item .stock-display, 
.location-min-stock-item .min-stock-display, 
.operation-type-by-location-cell .location-operation-item .operation-display {
    font-weight: bold !important;
    color: #344767 !important;
    font-size: 12px !important;
    min-width: 30px !important;
    text-align: center !important;
    padding: 1px 4px !important;
    border-radius: 2px !important;
    background-color: #e9ecef !important;
    border: 1px solid #d2d6da !important;
}

/* Estilos para los inputs - completamente idénticos excepto por el color del focus */
.location-stock-item .stock-input, .location-min-stock-item .min-stock-input {
    max-width: 70px !important;
    width: 70px !important;
    padding: 3px 6px !important;
    border: 1px solid #d2d6da !important;
    border-radius: 3px !important;
    font-size: 12px !important;
    text-align: center !important;
    background-color: #fff !important;
    height: 24px !important;
    line-height: 1.2 !important;
}

.location-stock-item .stock-input:focus, .location-min-stock-item .min-stock-input:focus {
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
    outline: none;
}

/* Solo el color del focus diferente para stock mínimo */
.location-min-stock-item .min-stock-input:focus {
    border-color: #ff6b35;
    box-shadow: 0 0 0 0.2rem rgba(255, 107, 53, 0.25);
}

/* Modo de edición en bulk - idénticos */
.bulk-edit-mode .location-stock-item, .bulk-edit-mode .location-min-stock-item {
    background-color: #f8f9fa;
    padding: 4px 6px;
    border-radius: 4px;
    border: 1px solid #e9ecef;
    margin: 2px 0;
}

.bulk-edit-mode .product-checkbox:checked ~ td {
    background-color: #e3f2fd;
}

/* Indicador visual para productos seleccionados */
.bulk-edit-mode tr[data-product-id] {
    transition: background-color 0.3s ease;
}

.bulk-edit-mode .product-checkbox:checked ~ td {
    background-color: #e3f2fd;
}

.bulk-edit-mode .product-checkbox:checked ~ td .location-stock-item {
    background-color: #ffffff;
    border: 1px solid #007bff;
    box-shadow: 0 0 0 0.1rem rgba(0, 123, 255, 0.15);
}

.bulk-edit-mode .product-checkbox:checked ~ td .location-min-stock-item {
    background-color: #ffffff;
    border: 1px solid #ff6b35;
    box-shadow: 0 0 0 0.1rem rgba(255, 107, 53, 0.15);
}

/* Estilos específicos para las celdas de la tabla - idénticos */
.stock-by-location-cell, .min-stock-by-location-cell {
    padding: 8px 12px;
    vertical-align: top;
    max-width: 200px;
}

.stock-by-location-cell .location-stock-item,
.min-stock-by-location-cell .location-min-stock-item {
    margin-bottom: 3px !important;
}

.stock-by-location-cell .location-stock-item:last-child,
.min-stock-by-location-cell .location-min-stock-item:last-child {
    margin-bottom: 0 !important;
}

/* Checkbox styling */
.form-check-input:checked {
    background-color: #007bff;
    border-color: #007bff;
}

/* Controles de edición en bulk */
#bulkEditControls {
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 15px;
    background-color: #f8f9fa;
}

#bulkEditControls .alert {
    margin-bottom: 15px;
}

#bulkEditControls .btn {
    margin-right: 10px;
    font-size: 0.875rem;
}

.low-stock-alert .stock-display {
    background-color: #dc3545 !important;
    color: white !important;
    border: 1px solid #dc3545 !important;
    font-weight: bold !important;
}

/* Eliminamos estilos especiales para normal-stock para unificar espaciado */
/* Los estilos base ya están definidos, no necesitamos rulesets adicionales */

/* Animación sutil para stock bajo */
@keyframes pulse-red {
    0% {
        box-shadow: 0 0 0 0 rgba(220, 53, 69, 0.4);
    }
    70% {
        box-shadow: 0 0 0 8px rgba(220, 53, 69, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(220, 53, 69, 0);
    }
}

/* Tooltip para mostrar información de stock mínimo */
.low-stock-alert[title]:hover:after {
    content: attr(title);
    position: absolute;
    background: #333;
    color: white;
    padding: 5px 8px;
    border-radius: 3px;
    font-size: 13px;
    white-space: nowrap;
    z-index: 1000;
    margin-top: 25px;
    margin-left: -20px;
}

/* Estilos para elementos de tipo de operación - IDÉNTICOS a stock */
.operation-type-by-location-cell .location-operation-item {
    margin-bottom: 3px !important;
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 4px 6px !important;
    border-radius: 3px !important;
    transition: background-color 0.2s ease !important;
    min-height: 28px !important;
    box-sizing: border-box !important;
    background-color: #f8f9fa !important;
    border: 1px solid #e9ecef !important;
}





/* Estilos para los selectores - más compactos */
.operation-type-by-location-cell .location-operation-item .operation-select {
    max-width: 75px !important;
    width: 75px !important;
    padding: 2px 4px !important;
    border: 1px solid #d2d6da !important;
    border-radius: 3px !important;
    font-size: 11px !important;
    text-align: left !important;
    background-color: #fff !important;
    line-height: 1.2 !important;
    height: 24px !important;
}

.operation-type-by-location-cell .location-operation-item .operation-select:focus {
    border-color: #28a745 !important;
    box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25) !important;
    outline: none !important;
}

/* Modo de edición en bulk para operaciones */
.bulk-edit-mode .operation-type-by-location-cell .location-operation-item {
    background-color: #f8f9fa !important;
    padding: 4px 6px !important;
    border-radius: 4px !important;
    border: 1px solid #e9ecef !important;
    margin: 2px 0 !important;
}

.bulk-edit-mode .product-checkbox:checked ~ td .operation-type-by-location-cell .location-operation-item {
    background-color: #ffffff !important;
    border: 1px solid #28a745 !important;
    box-shadow: 0 0 0 0.1rem rgba(40, 167, 69, 0.15) !important;
}

/* Estilos para la celda de operación - idénticos a stock */
.operation-type-by-location-cell {
    padding: 8px 12px !important;
    vertical-align: top !important;
    max-width: 200px !important;
}

.operation-type-by-location-cell .location-operation-item {
    margin-bottom: 3px !important;
}

.operation-type-by-location-cell .location-operation-item:last-child {
    margin-bottom: 0 !important;
}

