/* Variables de colores */
:root {
    --naranja: #ff914d;
    --negro: #343a40;
    --gris-claro: #f8f9fa;
    --gris-hover: #ececec;
    --gris-borde: #dee2e6;
}

/* Fondo general */
body {
    background-color: var(--gris-claro);
}

/* Tabla */
.table-responsive {
    border: 1px solid var(--gris-borde);
    border-radius: 8px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.table-hover tbody tr:hover {
    background-color: var(--gris-hover);
}

.bg-negro {
    background-color: var(--negro);
}

.text-naranja {
    color: var(--naranja);
}

/* Botones */
.btn-outline-primary {
    border-color: #007bff;
    color: #007bff;
}

.btn-outline-primary:hover {
    background-color: #007bff;
    color: white;
}

.btn-outline-danger {
    border-color: #dc3545;
    color: #dc3545;
}

.btn-outline-danger:hover {
    background-color: #dc3545;
    color: white;
}

.btn-naranja {
    background-color: var(--naranja);
    color: white;
    border: none;
    border-radius: 5px;
    font-weight: bold;
}

.btn-naranja:hover {
    background-color: #f84600;
    color: white;
}

/* Tarjetas en móviles */
.card {
    border: 1px solid var(--gris-borde);
    border-radius: 8px;
    background-color: white;
}

.card-title {
    color: var(--negro);
}

.card-text strong {
    color: var(--negro);
}

.card-title {
    font-size: 1.2rem;
    font-weight: bold;
}

/* Estilos específicos para pantallas grandes */
@media (min-width: 768px) {
    .d-none {
        display: none;
    }

    .table-responsive {
        display: block;
        /* Mostrar la tabla en pantallas grandes */
    }
}

.nav-link.active {
    border-bottom: 2px solid #fb441a;
}

/* Botones */
.btn-volver {
    background-color: var(--verde);
    color: #fff;
    font-weight: bold;
    border-radius: 8px;
}

.btn-volver:hover {
    background-color: #1e3f24;
    color: #fff;
}

.btn-registrar {
    background-color: var(--naranja);
    color: #fff;
    font-weight: bold;
    border-radius: 8px;
}

.btn-registrar:hover {
    background-color: #d13914;
    color: #fff;
}

/* Etiquetas */
.form-label {
    color: var(--verde);
}

/* Input y select */
.form-control,
.form-select {
    border: 1px solid var(--gris-borde);
    border-radius: 6px;
    transition: all 0.3s ease;
}

.form-control:focus,
.form-select:focus {
    border-color: var(--naranja);
    box-shadow: 0 0 0 0.2rem rgba(251, 68, 26, 0.25);
}

/* Títulos */
.text-naranja {
    color: var(--naranja);
}

/* Tarjeta del formulario */
.shadow-sm {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Variables de colores */
:root {
    --naranja: #fb441a;
    --negro: #343a40;
    --gris-claro: #f8f9fa;
    --gris-hover: #ececec;
    --gris-borde: #dee2e6;
}

.btn-volver {
    background-color: #28552f;
    color: white;
    border-radius: 8px;
}

.text-naranja {
    color: var(--naranja);
}

.text-verde {
    color: #28552f;
}

.btn-registrar {
    background-color: #fb441a;
    color: white;
    border-radius: 8px;
    font-weight: bold;
}

.btn-eliminar {
    color: white;
    background-color: #dc3545;
}

.btn-eliminar:hover {
    background-color: #b02a37;
}

.hover-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hover-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

h5 {
    color: #333;
}

.pagination .active > span,
.pagination .active > span:hover {
    background-color: #fb441a !important;
    border-color: #fb441a !important;
}

.pagination a {
    color: #fb441a;
}

.pagination a:hover {
    background-color: #f8e1ea;
    border-color: #fb441a;
    color: #fb441a;
}

@media (max-width: 768px) {
    .img-responsive {
        width: 75%;
    }
}

@media (min-width: 768px) {
    .img-responsive {
        width: 100%;
    }
}

#categorias {
    position: sticky;
    top: 0;
    overflow-y: auto;
    height: 100vh;
    max-height: 100vh;
}

#categorias::-webkit-scrollbar {
    width: 8px;
}

#categorias::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 4px;
}

#categorias::-webkit-scrollbar-thumb:hover {
    background-color: #aaa;
}

#resumen {
    position: sticky;
    top: 0;
    overflow-y: auto;
    height: 100vh;
    max-height: 100vh;
}

#resumen::-webkit-scrollbar {
    width: 8px;
}

#resumen::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 4px;
}

#resumen::-webkit-scrollbar-thumb:hover {
    background-color: #aaa;
}

#render {
    width: 350px;
    object-fit: cover;
    filter: drop-shadow(0 0 0.75rem rgba(5, 5, 5, 0.295));
}

#nosotros-texto {
    font-size: 20px;
}

.descripciones {
    font-size: 18px;
}

#logo-burritos {
    margin-top: -220px;
}

@media (min-width: 769px) {
    #categorias,
    #resumen {
        transform: translateX(0) !important;
    }
}

@media (max-width: 768px) {
    #productos .col-12 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    #productos .card {
        margin-bottom: 1rem;
    }

    #burritos .col-12 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    #burritos .card {
        margin-bottom: 1rem;
    }

    #categorias,
    #resumen {
        position: fixed;
        width: 100%;
        height: 100vh;
        /* Ocupa toda la pantalla */
        max-height: 100vh;
        overflow-y: auto;
        /* Activa el scroll en Y */
        transform: translateX(-100%);
        /* Por defecto oculto fuera de la pantalla */
        transition: transform 0.3s ease-in-out;
        /* Transición suave */
        z-index: 1050;
        /* Asegura que esté encima de otros elementos */
    }

    #categorias {
        top: 0;
        left: 0;
    }

    #resumen {
        top: 0;
        right: 0;
        transform: translateX(100%);
        /* Oculto fuera de la pantalla */
    }

    #categorias.active,
    #resumen.active {
        transform: translateX(0);
        /* Muestra la sección */
    }

    #render {
        width: 250px;
    }

    #logo-burritos {
        margin-top: -320px;
    }
}

@media (max-width: 413px) {
    #logo-burritos {
        margin-top: -220px;
    }
}

.container-boton {
    background-color: #2e6329;
    border: 1px solid #fff;
    position: fixed;
    z-index: 999;
    border-radius: 50%;
    bottom: 20px;
    right: 25px;
    padding: 10px;
    transition: ease 0.3s;
    animation: efecto 1.2s infinite;
}

.container-boton:hover {
    transform: scale(1.1);
    transition: 0.3s;
}

.boton {
    width: 35px;
    transition: ease 1s;
}

@keyframes efecto {
    0% {
        box-shadow: 0 0 0 0 rgba(102, 235, 25, 0.85);
    }
    100% {
        box-shadow: 0 0 0 15px rgba(40, 109, 0, 0.85);
    }
}
