/* Layout Principal */
.single-main-content { padding: 40px 0; }
.single-layout {
    display: grid;
    grid-template-columns: 1fr 350px; /* Contenido ocupa el resto, Sidebar 350px fijos */
    gap: 40px;
}

/* Cabecera del Artículo */
.single-category { background: var(--primary-red); color: var(--white); padding: 4px 10px; text-transform: uppercase; font-size: 0.8rem; font-weight: bold; border-radius: 3px; display: inline-block; margin-bottom: 15px; }
.single-title { font-size: 2.5rem; line-height: 1.1; margin-bottom: 15px; color: var(--dark-blue); }
.single-meta { font-size: 0.9rem; color: #666; margin-bottom: 25px; display: flex; gap: 15px; }
.meta-author { font-weight: bold; color: var(--primary-red); }

/* Contenedor Multimedia (Imagen o Video) */
.single-media { margin-bottom: 30px; border-radius: 8px; overflow: hidden; position: relative; aspect-ratio: 16/9; background: #000; }
.single-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mcs-video-wrapper { cursor: pointer; }
.play-button-overlay {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    width: 80px; height: 80px; background: rgba(165, 0, 33, 0.9);
    border-radius: 50%; display: flex; justify-content: center; align-items: center;
    transition: transform 0.3s ease;
}
.play-button-overlay svg { width: 40px; height: 40px; margin-left: 5px; }
.mcs-video-wrapper:hover .play-button-overlay { transform: translate(-50%, -50%) scale(1.1); }

/* Tipografía del Contenido para legibilidad */
.single-entry-content { font-size: 1.15rem; line-height: 1.8; color: #333; }
.single-entry-content p { margin-bottom: 20px; }
.single-entry-content h2, .single-entry-content h3 { color: var(--dark-blue); margin: 30px 0 15px; line-height: 1.3; }
.single-entry-content figure { margin-bottom: 25px; }
.single-entry-content a { color: var(--primary-red); text-decoration: underline; }

/* Etiquetas (Tags) */
.post-tags { margin-top: 40px; font-size: 0.9rem; font-weight: bold; }
.post-tags a { background: var(--grey-light); padding: 5px 10px; border-radius: 3px; margin-left: 5px; font-weight: normal; text-decoration: none; color: var(--black); }

/* Estilos del Sidebar Personalizado */
.widget-title { border-left: 4px solid var(--primary-red); padding-left: 10px; margin-bottom: 20px; font-size: 1.2rem; text-transform: uppercase; color: var(--dark-blue); }
.sidebar-post-list { list-style: none; }
.sidebar-post-list li { margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid #eee; }
.sidebar-post-list li:last-child { border-bottom: none; }
.sidebar-post-link { display: flex; gap: 15px; align-items: center; }
.sidebar-thumb { width: 80px; height: 80px; flex-shrink: 0; border-radius: 4px; overflow: hidden; }
.sidebar-thumb img { width: 100%; height: 100%; object-fit: cover; }
.sidebar-post-title { font-size: 0.95rem; font-weight: bold; line-height: 1.3; transition: color 0.3s; }
.sidebar-post-link:hover .sidebar-post-title { color: var(--primary-red); }

/* Responsive */
@media (max-width: 992px) {
    .single-layout { grid-template-columns: 1fr; }
    .single-title { font-size: 2rem; }
    .single-media { aspect-ratio: auto; } /* En móviles dejamos que la imagen decida el alto si no es video */
}