* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: sans-serif;
}

body {
    font-family: 'Courier New', Courier, monospace;
    color: #bcd200;
    background-color: #444; /* Cambia el color de fondo a un gris m�s claro */
}

ul {
    display: flex;
    justify-content: space-between;
    list-style: none;
}

a {
    display: block;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 1.2em;
    transition: .3s;
}

header {
    position: relative;
    background: black;
    width: 100%;
    z-index: 1000;
    position: fixed;
    align-items: center;
    justify-content: space-between;
}

.fixed_menu {
    font-family: 'Helvetica Neue', Arial, sans-serif;
    text-align: left;
    padding: 20;
    margin: 0;
    list-style: none;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 12vh;
    width: 100%;
}

#menu-desarrollo {
    position: relative;
    align-items: center;
}

    #menu-desarrollo .submenu {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        background: black;
        padding-top: 20px;
        width: auto;
        border-top: 5px solid #bcd200;
        text-align: left;
    }

        #menu-desarrollo .submenu li {
            white-space: nowrap;
            font-weight: normal;
            padding: 5px; /* Ajusta este valor según tus necesidades */
        }

            #menu-desarrollo .submenu li a {
                display: block;
                padding: 10px;
                color: white;
                text-transform: none;
            }

                #menu-desarrollo .submenu li a:hover {
                    background: #bcd200;
                    color: black;
                }



nav {
    background: #333;
    position: relative;
    padding: 15px 0;
    z-index: 10;
}

.logo {
    position: center;
    height: 100%;
    flex: 0; /* Esto evita que el logo se estire para ocupar espacio extra */
    align-self: auto; /* Alinea el logo en el centro verticalmente */
}

    .logo img {
        width: calc(2vw + 8vh); /* Ancho del logo proporcional al ancho de la ventana */
        height: auto; /* Asegura que se mantenga la relación de aspecto de la imagen */
    }

nav ul {
    width: 100%;
    transition: .3s;
}

    nav ul li a {
        color: white;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: left;
    }

        nav ul li a:hover {
            color: #bcd200;
        }

.menuList {
    display: flex;
}

.menuList-left, .menuList-right {
    display: flex;
    flex: 1; /* Esto hace que los elementos de la lista ocupen todo el espacio disponible */
    justify-content: space-around; /* Esto distribuye el espacio de manera uniforme entre los elementos de la lista */
    font-size: calc(0.5vw + 0.5vh); /* Tamaño de fuente proporcional al ancho de la ventana */
    padding: 10px 0; /* Añade padding en la parte superior e inferior */
    align-items: center;
}

.video-controls {
    display: flex;
    flex-direction: column;
    align-items: center; /* Centra horizontalmente los elementos hijos */
    width: 100%;
}

.video-buttons {
    display: flex;
    justify-content: center; /* Centra los botones entre sí */
    flex-wrap: wrap; /* Permite que los botones se ajusten en filas según el ancho disponible */
    gap: 10px; /* Espacio entre los botones */
    width: 100%; /* Ocupa todo el ancho del contenedor padre */
    margin-bottom: 20px; /* Espacio entre los botones y el reproductor de video */
}

    .video-buttons .video-btn {
        background-color: #007bff; /* Azul */
        color: white;
        border: none;
        padding: 10px 20px;
        cursor: pointer;
        font-weight: bold;
        transition: background-color 0.3s ease;
        border-radius: 20px; /* Bordes redondeados */
    }

        .video-buttons .video-btn:hover {
            background-color: #007bff; /* Azul */
            color: white;
            border: none;
            padding: 10px 20px;
            cursor: pointer;
            font-weight: bold;
            transition: background-color 0.3s ease;
            border-radius: 20px; /* Bordes redondeados */
        }

.video-player video {
    width: 100%; /* Asegura que el video ocupe todo el ancho del contenedor */
    max-width: 960px; /* Puedes ajustar esto según el tamaño máximo deseado para el reproductor */
    height: auto; /* Mantiene la proporción del video */
}



/*.container {
    position: relative;
    max-width: 1200px;
    margin:  100px auto 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.container img {
    width: 150px;
    height: auto;
}*/



.main {
    background-color: rgba(238, 238, 238, 0.75);
    font-size: 1em; /* Cambia esto a tu tamaño de fuente deseado para pantallas grandes */
    height: fit-content;
    width: 80%;
    padding-top: 20px;
    margin: 0px auto 0;
    padding-bottom: 30px;
    margin-bottom: -50px;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
}

@media (max-width: 600px) {
    .main {
        font-size: 0.7em; /* Cambia esto a tu tamaño de fuente deseado para pantallas pequeñas */
    }
}

.my-jumbotron {
    padding: 2rem;
    margin-bottom: 2rem;
    margin: 130px 20px 20px 20px;
    color: #bcd200;
    text-align: center;
    background: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2)), /* Capa de color de fondo semi-transparente blanco */
    url('../images/RedNeuronal1.jpg'); /* Capa de imagen de fondo */
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    border: 3px solid #f9a825; /* Añade un borde de 3px de grosor */
    border-radius: 10px; /* Añade bordes redondeados */
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5); /* Añade una sombra al borde */
}

    .my-jumbotron h1 {
        padding: 10px;
        display: inline;
        width: 100%;
        margin-bottom: 40px;
        font-size: 3em;
        font-weight: bold;
        text-shadow: 2px 2px 4px rgba(0, 0, 0, 1);
    }

    .my-jumbotron p {
        background-color: rgba(0, 0, 0, 0.5);
        padding: 10px;
        font-weight: bold;
        margin-top: 40px;
        width: 100%;
    }

.main-cont {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
}

/* Estilos para pantallas grandes */
#cat-sidebar {
    width: 20%;
    overflow-y: auto;
    max-height: 100vh;
    overflow-y: auto;
    background-color: #999595;
    padding: 10px;
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
}

#cat-content {
    width: 70%;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    z-index: 1;
}
.videolink a {
    font-size: 14px; /* Ajusta esto al tamaño que prefieras */
    
    text-transform: capitalize; /* Esto hará que la primera letra de cada palabra esté en mayúscula */
}

/* Estilos para pantallas pequeñas */
@media (max-width: 600px) {
    .main-cont {
        flex-direction: column;
    }

    #cat-sidebar {
        order: 1;
        width: 100%; /* Ajusta el ancho al 100% para que ocupe toda la pantalla */
        max-height: none; /* Elimina la altura máxima para permitir que el contenido fluya naturalmente */
    }

    .videolink a{
        font-size: 12px; /* Ajusta esto al tamaño que prefieras */
        text-decoration: underline; /* Esto hará que el texto esté subrayado */
        text-transform: capitalize; /* Esto hará que la primera letra de cada palabra esté en mayúscula */
    }

    #cat-content {
        order: 2;
        width: 100%; /* Ajusta el ancho al 100% para que ocupe toda la pantalla */
    }
}

.category {
    cursor: pointer;
    margin-bottom: 10px;
    font-weight: bold;
    padding: 5px;
    border-bottom: 1px solid #ccc;
}

    .category:before {
        content: '►';
        display: inline-block;
        margin-right: 5px;
        transition: transform 0.2s;
    }


    .category.open:before {
        content: '▼';
    }


.sub-category, .sub-sub-category {
    margin-left: 20px;
    font-size: 13px;
    display: none;
    cursor: pointer;
    margin-bottom: 10px;
    font-weight: bold;
    padding: 5px;
}

    .sub-sub-category a {
        display: block;
        padding: 3px 0;
        text-decoration: none;
        color: #000000;
    }

        .sub-sub-category a:hover {
            text-decoration: underline;
        }


#videoPlayer {
    max-width: 100%;
    height: auto;
}

.duration {
    color: #2b2925;
    font-size: 1em;
}

.hidden-video {
    display: none;
}

/* other test */

.boss-card-container {
    display: flex;
    flex-wrap: wrap;
    max-height: fit-content;
    justify-content: center;
}

.boss-card {
    width: 450px;
    text-align: center;
    /*height: 550px;*/
    border-radius: 20px;
    margin: 20px;
    box-shadow: 5px 5px 5px 5px #401916;
    display: flex;
    flex-direction: column; /* Change to column layout */
    background-color: #ffffff;
    margin-top: 20px;
}


.boss-title {
    width: 100%; /* Title width matches card width */
    background-color: #bcd200;
    color: #ff0000;
    font-size: 1.3em;
    font-weight: 900;
    text-align: center;
    padding: 10px;
    border-radius: 10px 10px 0px 0px;
}

.boss-image {
    height: 300px; /* Height of the image */
    width: 100%; /* Image width matches card width */
}

    .boss-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.boss-details {
    font-size: 1.2em;
    text-align: left;
    flex: 1; /* Grow to fill remaining space */
    display: flex;
    flex-direction: column;
    justify-content: flex-end; /* Align text at the bottom */
    padding: 10px;
}

.boss-game p {
    text-transform: none;
    font-size: 1em;
}

.boss-game ul {
    color: black;
    display: block;
    list-style-type: disc;
    padding-left: 20px; /* Añade un padding a la izquierda para separar las viñetas del texto */
}

    .boss-game ul li {
        display: list-item; /* Esto hará que cada elemento de la lista se muestre en su propia línea */
        margin-bottom: 10px; /* Añade un margen en la parte inferior de cada elemento de la lista para separarlos */
    }



/* css footer */

footer {
    background-color: rgb(0, 0, 0);
    text-align: center;
    font-size: 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 50px;
    padding: 10px 0;
}

.topFooter {
    flex-basis: 100%;
    height: fit-content;
    background-color: rgb(0, 0, 0);
    margin-top: 10px;
    margin-bottom: 10px;
}

.middleFooter {
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.rectangleLeft,
.rectangleRight {
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

    .rectangleLeft img,
    .rectangleRight img {
        max-width: 70%;
        max-height: 70%;
        margin: auto;
    }

.bottomFooter {
    padding-top: 20px;
    width: 100%;
    height: 50px;
    background-color: #000000;
    text-align: center;
    font-size: 14px;
    bottom: 0;
    display: flex;
    justify-content: center; /* Center horizontally */
    align-items: center; /* Center vertically */
    padding-bottom: 30px;
}

    .bottomFooter p {
        color: #E9E5D6;
        padding: 20px;
    }

    .bottomFooter span {
        color: red;
    }

/* just for images in participant page */

.participant-container, .grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.participant-container {
    grid-gap: 50px;
    background-color: #ffffff;
    margin: 80px;
    color: #000000;
    font-weight: bold;
    margin-bottom: 20px;
    border: 3px solid #f9a825;
    padding: 10px;
    border-radius: 10px;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5);
}

/*formulario herramientas*/
.formContainer {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    justify-content: center;
    align-items: center;
}

    .formContainer form {
        background: white;
        padding: 20px;
        margin: auto;
        max-width: 500px; /* Ajusta este valor según tus necesidades */
        border-radius: 10px; /* Añade bordes redondeados */
    }

        .formContainer form input[type="text"] {
            width: 80%;
        }

        .formContainer form input,
        .formContainer form label,
        .formContainer form button {
            margin-bottom: 10px;
        }

/* table css */
.tablezone {
    color: black;
    padding: 7px;
    margin: 0 auto;
}

table {
    width: 100%;
    border-collapse: collapse;
    box-sizing: border-box;
    table-layout: fixed;
}

thead th,
tbody td {
    padding: 2px;
    border: 1px solid #000000; /* Border color */
    text-align: center;
}

thead {
    background-color: #000; /* Header background color */
    color: #fff; /* Header text color */
}

caption {
    caption-side: top; /* Positions the caption above the table */
    text-align: center; /* Centers the caption */
    font-size: 2em; /* Makes the caption slightly larger than the default text size */
    color: #f9a825;
    ; /* Sets the color of the caption */
    padding: 10px; /* Adds some padding around the caption */
}

tbody tr:nth-child(even) {
    background-color: #f2f2f2; /* Alternate row color */
}

table td {
    overflow-wrap: break-word; /* Breaks the word at the end of the line (better support than word-wrap) */
}

th td {
    overflow: hidden;
    word-wrap: break-word;
}

th {
    font-size: 14px;
    white-space: nowrap;
    overflow: visible;
}

tbody td a {
    color: #007bff; /* Link color */
    text-decoration: none;
}


/*Pestañas de la página captación de señales*/
.tab-container {
    /* Esto dará al contenedor un aspecto de "ventana" */
    border: 1px solid black;
    border-radius: 5px;
    padding: 10px;
    /*width: 100%;*/
}

.tab-buttons {
    /* Esto alinea los botones de las pestañas en una fila */
    display: flex;
    justify-content: flex-start;
    margin-bottom: 10px
}

.tab-button {
    /* Esto dará a los botones un aspecto de "pestañas" */
    background-color: #ccc;
    border: none;
    padding: 10px;
    border-radius: 5px 5px 0 0;
    cursor: pointer;
    margin-right: 5px;
}

    .tab-button.active {
        /* Esto resaltará la pestaña activa */
        background-color: #fff;
        border-bottom: 1px solid #fff;
    }

.tab-contents {
    display: block;
}

.tab-content {
    display: block;
}

    .tab-content.active {
        display: block; /* Muestra el contenido de la pestaña activa */
    }

.margen-botón {
    margin: 10px;
}
