#header-publicaciones {
    border-radius: 5rem;
}

#publicaciones-recientes {
    font-family: Georgia, 'Times New Roman', Times, serif;
}

h1 {
    text-align: center;
}

form {
    width: 80%;
    margin: 0 auto;
    margin-top: 1rem;
    padding: 2rem;
    background: #fff;
    border-radius: 1rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

form input[type="text"],
form textarea {
    width: 100%;
    padding: 10px;
    margin: 5px 0 20px 0;
    border: 1px solid #ccc;
    border-radius: 4px;
}

form input[type="submit"] {
    background-color: #4CAF50;
    color: white;
    padding: 14px 2rem;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

form input[type="submit"]:hover {
    background-color: #45a049;
}

#formulario-buscador {
    background-color: #c0eed3;
}

#formulario-buscador label {
    margin-bottom: 1rem;
}

.posts {
    width: 80%;
    margin: 2rem auto;
}

.post {
    background: rgba(24, 0, 69, 0.1);
    margin-bottom: 2rem;
    padding: 2rem;
    border-radius: 8px;
}

#post-completa h1 {
    background: linear-gradient(135deg, #2184c2, #21efcd);
    margin-bottom: 2rem;
}

#post-completa {
    padding: 2rem;
    border-radius: 8px;
}

#post-completa img {
    min-height: 15rem;
    height: auto;
    display: block;
    margin: auto;
    margin-bottom: 10px;
    object-fit: cover;
    border-radius: 1rem;
}

.post h2 {
    font-family: Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

.post img {
    min-width: 60%;
    max-width: 50%;
    max-height: 25rem;
    height: auto;
    display: block;
    margin: auto;
    margin-bottom: 10px;
    object-fit: cover;
    border-radius: 1rem;
}

.post-fecha {
    background-color: #f9c615;
}

.carousel-indicators [data-bs-target] {
    border-top: 10px solid #000000;
}

/* ============================================
   NUEVOS ESTILOS PARA VIDEOS DE YOUTUBE
   ============================================ */

.video-container {
    margin: 20px auto;
    max-width: 100%;
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%; /* Ratio 16:9 */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    border-radius: 1rem;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
}

/* Para publicaciones completas */
#post-completa .video-wrapper {
    max-width: 900px;
    margin: 0 auto 20px auto;
}

/* ============================================
   FIN ESTILOS PARA VIDEOS
   ============================================ */

/* ! responsive = celulares pequeños */

@media screen and (min-width: 0px) {

    .post img {
        max-width: 100%;
    }
    
    .video-wrapper {
        border-radius: 0.5rem;
    }

}

/* ! ---- */

/* ! responsive = celulares normales */

@media screen and (min-width: 375px) {
    /* Estilos adicionales si es necesario */
}

/* ! ---- */

/* ! responsive = tablets */

@media screen and (min-width: 481px) {
    
    .video-wrapper {
        border-radius: 0.8rem;
    }

}

/* ! ---- */

/* ! responsive = pantallas chicas */

@media screen and (min-width: 769px) {

    .post h2 {
        font-size: 2rem;
    }
    
    .video-wrapper {
        max-width: 800px;
        margin: 0 auto;
    }

}

/* ! ---- */

/* ! responsive = laptops */

@media screen and (min-width: 861px) {

    .post img {
        max-width: 50%;
    }

}

/* ! ---- */

/* ! responsive = pantallas grandes */

@media screen and (min-width: 1024px) {
    
    .video-wrapper {
        max-width: 900px;
    }

}

/* ! ---- */

/* ! responsive = pantallas grandes tv */

@media screen and (min-width: 1329px) {

    .post h2 {
        font-size: 2.5rem;
    }

}

/* ! ---- */

/* ! responsive = pantallas grandes tv */

@media screen and (min-width: 1900px) {
    
    .video-wrapper {
        max-width: 1200px;
    }

}

/* ! ---- */

/* ! responsive = pantallas grandes tv */

@media screen and (min-width: 2560px) {
    
    .video-wrapper {
        max-width: 1400px;
    }

}

/* ! ---- */