﻿/* Estilos generales */
body {
    margin: 0;
    padding: 0;
    background: #E7EDF8;
}

/* Contenedor principal */
.contenedor_cuerpo {
    padding: 40px 20px;
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding-top: 100px;
    margin-top:70px;
}

/* Estilos del cuerpo */
.cuerpo {
    padding: 40px;
    border-radius: 10px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    max-width: 1000px;
    width: 100%;
    margin-top: 50px;

    background-color: #f8f9f9; /* Fondo blanco con opacidad */
}

/* Titulo */
.titulo {
    font-size: 2rem;
}

/* Input del buscador */
.input_buscador {
    padding: 10px;
    font-size: 1rem;
    border-radius: 5px;
}

/* Tabla de citas responsiva */
.table-responsive {
    background-color: #f8f9f9;
    overflow-x: auto;
}

.tabla_citas {
    width: 100%;
    border-collapse: collapse;
}

    .tabla_citas th, .tabla_citas td {
        text-align: left;
        padding: 15px;
    }

.thead-light th {
    background-color: #f2f2f2;
    color: #333;
}

.tabla_citas td {
    background-color: #ffffff;
}

/* Botones de opciones */
.btn-group a {
    margin-right: 5px;
}

/* Estilo de la paginación */
.paginacion {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}

    .paginacion span {
        margin: 0 10px;
        font-size: 1rem;
    }

/* Ajuste de la fila que contiene el botón y el buscador */
.row.mb-3 {
    align-items: center;
}

/* Alineación del buscador a la derecha */
.d-flex.justify-content-end {
    justify-content: flex-end;
}

/* Estilo personalizado para el botón */
.btn-crear {
    background-color: #28a745 !important; /* Color verde */
    border-color: #28a745 !important; /* Borde verde */
    color: white !important; /* Color del texto */
    padding: 10px 15px; /* Ajusta el tamaño del padding */
    font-size: 1rem; /* Tamaño de la fuente */
    border-radius: 5px; /* Borde redondeado */
    transition: background 0.3s ease !important; /* Transición en hover */
}

    /* Hover personalizado */
    .btn-crear:hover {
        background-color: #218838 !important; /* Color verde más oscuro al pasar el mouse */
        border-color: #1e7e34 !important; /* Borde verde más oscuro al pasar el mouse */
    }

/* Estilo base del botón amarillo (estado inactivo) */
.btn-activar {
    background: linear-gradient(45deg, #ffc107, #ffd700) !important; /* Gradiente amarillo */
    border: none;
    color: white;
    transition: background 0.3s ease;
    padding: 5px 10px; /* Ajuste del padding */
    font-size: 16px; /* Tamaño de fuente */
    border-radius: 4px; /* Bordes suaves */
}

    /* Hover para el botón amarillo */
    .btn-activar:hover {
        background: linear-gradient(45deg, #e0a800, #d4b106) !important; /* Gradiente amarillo más oscuro */
    }

/* Estilo base del botón amarillo (estado inactivo) */
.btn-desactivar {
    background: linear-gradient(45deg, #ffc107, #ffd700) !important; /* Gradiente amarillo */
    border: none;
    color: white;
    transition: background 0.3s ease;
    padding: 5px 10px; /* Ajuste del padding */
    font-size: 16px; /* Tamaño de fuente */
    border-radius: 4px; /* Bordes suaves */
}

    /* Hover para el botón amarillo */
    .btn-desactivar:hover {
        background: linear-gradient(45deg, #e0a800, #d4b106) !important; /* Gradiente amarillo más oscuro */
    }


/* Estilos de botones */
.btn-primary {
    background: linear-gradient(45deg, #007bff, #00c3ff) !important;
    border: none;
    color: white;
    transition: background 0.3s ease;

    padding: 5px 10px; /* Ajuste del padding para un botón más pequeño */
    font-size: 16px; /* Tamaño de fuente reducido */
    border-radius: 4px; /* Bordes más suaves */
}

    .btn-primary:hover {
        background: linear-gradient(45deg, #0056b3, #0092cc) !important;
    }


/* Estilos de botones de eliminación */
.btn-danger {
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    color: white;

    padding: 5px 10px; /* Ajuste del padding para un botón más pequeño */
    font-size: 16px; /* Tamaño de fuente reducido */
    border-radius: 4px; /* Bordes más suaves */
}

    .btn-danger:hover {
        background-color: #c82333 !important;
        border-color: #bd2130 !important;
    }

/* RESPONSIVE DESIGN */

/* Pantallas medianas */
@media (max-width: 768px) {
    .cuerpo {
        padding: 20px;
    }

    .titulo {
        font-size: 1.5rem;
    }

    .input_buscador {
        font-size: 0.9rem;
    }

    .table-responsive {
        overflow-x: scroll;
    }

    .btn-group a {
        padding: 5px 8px;
        font-size: 0.9rem;
    }

    .paginacion span {
        font-size: 0.9rem;
    }

    /* En pantallas más pequeñas, asegúrate de que el botón y el buscador se alineen verticalmente */
    .row.mb-3 {
        flex-direction: column;
    }

    .col-md-4 {
        width: 100%;
        margin-bottom: 10px;
    }

    .d-flex.justify-content-end {
        justify-content: center;
    }
}

/* Pantallas pequeñas */
@media (max-width: 480px) {
    .titulo {
        font-size: 1.2rem;
    }

    .input_buscador {
        font-size: 0.8rem;
    }

    .table-responsive {
        overflow-x: scroll;
    }

    .btn-group a {
        font-size: 0.8rem;
        padding: 4px 6px;
    }

    .paginacion {
        flex-direction: column;
        align-items: center;
    }

        .paginacion span {
            font-size: 0.8rem;
            margin: 5px 0;
        }
}
