/* Estilos Generales */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f8f9fa;
}

.container {
    width: 95%;
    max-width: 1200px;
    margin: auto;
    padding: 10px;
}

/* Encabezados y textos */
h1 {
    text-align: center;
    color: #343a40;
}

label {
    font-weight: bold;
    margin-bottom: 5px;
    display: block;
}

input,
select {
    width: 100%;
    padding: 8px;
    margin-bottom: 10px;
    border: 1px solid #ced4da;
    border-radius: 4px;
}

.cantidad-input {
    width: 50%;
}

/* Estilos para la tabla de productos */

table,
th,
td {
    border: 1px solid #dee2e6;
}

th {
    background-color: #007bff;
    color: white;
}

/* Botones de acción */
button,
.btn {
    display: inline-block;
    padding: 8px 12px;
    margin: 5px 0;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    text-align: center;
}

button:hover,
.btn:hover {
    background-color: #0056b3;
}

/* Estilos Responsivos */
@media (max-width: 768px) {
    h1 {
        font-size: 1.5rem;
    }

    th,
    td {
        padding: 5px;
    }

    .btn-filter button {
        font-size: 0.9rem;
    }

    .sup {
        padding-bottom: 30px;
    }
}

@media (max-width: 576px) {

    th,
    td {
        padding: 3px;
        font-size: 0.8rem;
    }

    button,
    .btn {
        padding: 6px 10px;
        font-size: 0.8rem;
    }

    .sup {
        padding-bottom: 30px;
    }
}

.btn-group-scroll {
    overflow-x: auto;
    white-space: nowrap;
}

.btn-group-scroll .btn {
    display: inline-block;
    white-space: normal;
}