<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Cursos Gratis UNAM</title>
	<atom:link href="https://cursosgratisunam.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://cursosgratisunam.com</link>
	<description>Cursos gratuitos de la UNAM</description>
	<lastBuildDate>Fri, 14 Aug 2026 06:08:12 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://cursosgratisunam.com/wp-content/uploads/2021/05/fv.png</url>
	<title>Cursos Gratis UNAM</title>
	<link>https://cursosgratisunam.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Calculadora de horas</title>
		<link>https://cursosgratisunam.com/blog/calculadora-de-horas/</link>
					<comments>https://cursosgratisunam.com/blog/calculadora-de-horas/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Fri, 14 Aug 2026 05:57:25 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12410</guid>

					<description><![CDATA[Si necesitas calcular, sumar o restar horas y minutos, aquí encontrarás varias herramientas gratuitas para hacerlo&#8230;]]></description>
										<content:encoded><![CDATA[
<p class="has-text-align-center wp-block-paragraph">Si necesitas calcular, sumar o restar horas y minutos, aquí encontrarás varias herramientas gratuitas para hacerlo de forma rápida y sencilla. Puedes calcular el tiempo entre dos horas, conocer el tiempo transcurrido entre fechas exactas, sumar varias duraciones o restar un periodo de tiempo a otro.</p>



<p class="has-text-align-center wp-block-paragraph">Elige la calculadora que necesitas, introduce los datos y obtén el resultado al instante.</p>



<style data-wp-block-html="css">
html {
    scroll-behavior: smooth;
}

.menu-calculadoras {
    --nav-primario: #0ea5e9;
    --nav-primario-hover: #0284c7;
    --nav-fondo: #f8fafc;
    --nav-borde: #e2e8f0;
    --nav-texto: #0f172a;

    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    background-color: var(--nav-fondo);
    border: 1px solid var(--nav-borde);
    border-radius: 12px;
    padding: 16px;
    margin: 0 auto 40px auto;
    max-width: 800px;
    box-sizing: border-box;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
}

.menu-calculadoras * {
    box-sizing: border-box;
}

.nav-calc-btn {
    /* En móviles ocuparán casi el 50% cada uno (2x2) */
    flex: 1 1 calc(50% - 12px); 
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    text-decoration: none;
    background-color: #ffffff;
    color: var(--nav-primario);
    font-weight: 600;
    font-size: 0.9rem;
    padding: 12px 16px;
    border-radius: 8px;
    border: 1px solid var(--nav-primario);
    transition: all 0.2s ease;
}

.nav-calc-btn:hover, 
.nav-calc-btn:active {
    background-color: var(--nav-primario);
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 6px -1px rgba(14, 165, 233, 0.2);
}

/* =========================================
   MEDIA QUERIES (Responsive - Escritorio)
   ========================================= */
@media (min-width: 768px) {
    .nav-calc-btn {
        /* En pantallas más grandes, todos en una sola fila */
        flex: 1; 
        font-size: 0.95rem;
    }
}
</style>

<nav class="menu-calculadoras" aria-label="Navegación de calculadoras de tiempo">
    <!-- Los href deben coincidir exactamente con los ID de tus calculadoras -->
    <a href="https://cursosgratisunam.com/blog/calculadora-de-horas/#calculadora_de_horas" class="nav-calc-btn" data-wpel-link="internal">Calcular tiempo entre horas</a>
    <a href="https://cursosgratisunam.com/blog/calculadora-de-horas/#calculadora_de_horas_entre_dos_fechas" class="nav-calc-btn" data-wpel-link="internal">Calcular tiempo entre fechas</a>
    <a href="https://cursosgratisunam.com/blog/calculadora-de-horas/#suma_de_horas_y_minutos" class="nav-calc-btn" data-wpel-link="internal">Sumar horas</a>
    <a href="https://cursosgratisunam.com/blog/calculadora-de-horas/#restar_horas_y_minutos" class="nav-calc-btn" data-wpel-link="internal">Restar horas</a>
</nav>



<style data-wp-block-html="css">
/* =========================================
   ESTILOS ENCAPSULADOS: Calculadora de horas
   ========================================= */

.calculadora-horas {
    /* Variables de diseño */
    --ch-primario: #0ea5e9;
    --ch-primario-hover: #0284c7;
    --ch-texto-oscuro: #0f172a;
    --ch-texto-medio: #475569;
    --ch-texto-claro: #64748b;
    --ch-fondo-principal: #ffffff;
    --ch-fondo-secundario: #f8fafc;
    --ch-borde: #e2e8f0;
    --ch-error-fondo: #fef2f2;
    --ch-error-texto: #b91c1c;
    --ch-error-borde: #fca5a5;
    
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    background-color: var(--ch-fondo-principal);
    border: 1px solid var(--ch-borde);
    border-radius: 12px;
    padding: 24px;
    max-width: 600px;
    margin: 0 auto;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
    color: var(--ch-texto-oscuro);
    box-sizing: border-box;
}

/* Reset interno para evitar herencias indeseadas */
.calculadora-horas * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.calculadora-horas .ch-header {
    text-align: center;
    margin-bottom: 24px;
}

.calculadora-horas .ch-titulo {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--ch-texto-oscuro);
    margin-bottom: 8px;
    line-height: 1.2;
}

.calculadora-horas .ch-subtitulo {
    font-size: 0.95rem;
    color: var(--ch-texto-medio);
}

.calculadora-horas .ch-form-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 24px;
}

.calculadora-horas .ch-grupo {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}

.calculadora-horas .ch-label {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--ch-texto-oscuro);
}

.calculadora-horas .ch-input-wrapper {
    display: flex;
    gap: 8px;
}

.calculadora-horas .ch-input-texto {
    flex: 2;
    padding: 10px 12px;
    font-size: 1rem;
    border: 1px solid var(--ch-borde);
    border-radius: 6px;
    color: var(--ch-texto-oscuro);
    outline: none;
    transition: border-color 0.2s;
}

.calculadora-horas .ch-select {
    flex: 1;
    padding: 10px;
    font-size: 1rem;
    border: 1px solid var(--ch-borde);
    border-radius: 6px;
    background-color: var(--ch-fondo-secundario);
    color: var(--ch-texto-oscuro);
    cursor: pointer;
    outline: none;
    transition: border-color 0.2s;
}

.calculadora-horas .ch-input-texto:focus,
.calculadora-horas .ch-select:focus {
    border-color: var(--ch-primario);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}

.calculadora-horas .ch-btn-enlace {
    background: none;
    border: none;
    color: var(--ch-primario);
    font-size: 0.85rem;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    padding: 2px 0;
    width: max-content;
}

.calculadora-horas .ch-btn-enlace:hover {
    text-decoration: underline;
}

.calculadora-horas .ch-intercambiar-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px 0;
}

.calculadora-horas .ch-btn-intercambiar {
    background-color: var(--ch-fondo-secundario);
    border: 1px solid var(--ch-borde);
    color: var(--ch-texto-medio);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    font-size: 1.2rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
}

.calculadora-horas .ch-btn-intercambiar:hover {
    background-color: var(--ch-borde);
    color: var(--ch-texto-oscuro);
}

.calculadora-horas .ch-acciones {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
}

.calculadora-horas .ch-btn-primario,
.calculadora-horas .ch-btn-secundario {
    padding: 12px 20px;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 6px;
    cursor: pointer;
    text-align: center;
    border: none;
    transition: background-color 0.2s, color 0.2s;
    width: 100%;
}

.calculadora-horas .ch-btn-primario {
    background-color: var(--ch-primario);
    color: #ffffff;
}

.calculadora-horas .ch-btn-primario:hover {
    background-color: var(--ch-primario-hover);
}

.calculadora-horas .ch-btn-secundario {
    background-color: transparent;
    color: var(--ch-texto-medio);
    border: 1px solid var(--ch-borde);
}

.calculadora-horas .ch-btn-secundario:hover {
    background-color: var(--ch-fondo-secundario);
    color: var(--ch-texto-oscuro);
}

.calculadora-horas .ch-alerta {
    background-color: var(--ch-error-fondo);
    color: var(--ch-error-texto);
    border: 1px solid var(--ch-error-borde);
    padding: 12px 16px;
    border-radius: 6px;
    font-size: 0.95rem;
    margin-bottom: 20px;
    text-align: center;
}

.calculadora-horas .ch-resultado-caja {
    background-color: var(--ch-fondo-secundario);
    border: 1px solid var(--ch-borde);
    border-radius: 8px;
    padding: 20px;
    text-align: center;
}

.calculadora-horas .ch-resultado-titulo {
    font-size: 0.9rem;
    color: var(--ch-texto-claro);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.calculadora-horas .ch-resultado-principal {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--ch-primario);
    margin-bottom: 16px;
}

.calculadora-horas .ch-resultado-detalles {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.calculadora-horas .ch-detalle-badge {
    background-color: #ffffff;
    border: 1px solid var(--ch-borde);
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    color: var(--ch-texto-medio);
    font-weight: 500;
}

.calculadora-horas .ch-oculto {
    display: none !important;
}

/* =========================================
   MEDIA QUERIES (Responsive - Escritorio)
   ========================================= */
@media (min-width: 520px) {
    .calculadora-horas .ch-form-container {
        flex-direction: row;
        align-items: flex-start;
    }
    
    .calculadora-horas .ch-intercambiar-wrapper {
        padding: 0;
        margin-top: 28px; /* Alineado visualmente con los inputs */
    }

    .calculadora-horas .ch-btn-intercambiar {
        transform: rotate(90deg); /* Flechas en horizontal para escritorio */
    }

    .calculadora-horas .ch-acciones {
        flex-direction: row;
    }

    .calculadora-horas .ch-btn-primario {
        flex: 2;
    }

    .calculadora-horas .ch-btn-secundario {
        flex: 1;
    }
}
</style>

<script data-wp-block-html="js">
/**
 * Lógica principal encapsulada para la Calculadora de Horas
 * No utiliza dependencias externas.
 */
document.addEventListener('DOMContentLoaded', () => {
    
    // Elementos del DOM
    const inputInicio = document.getElementById('ch-inicio-hora');
    const selectInicioAMPM = document.getElementById('ch-inicio-ampm');
    const btnActualInicio = document.getElementById('ch-btn-actual-inicio');
    
    const inputFin = document.getElementById('ch-fin-hora');
    const selectFinAMPM = document.getElementById('ch-fin-ampm');
    const btnActualFin = document.getElementById('ch-btn-actual-fin');
    
    const btnIntercambiar = document.getElementById('ch-btn-intercambiar');
    const btnCalcular = document.getElementById('ch-btn-calcular');
    const btnLimpiar = document.getElementById('ch-btn-limpiar');
    
    const cajaError = document.getElementById('ch-mensaje-error');
    const cajaResultado = document.getElementById('ch-resultado-contenedor');
    const resPrincipal = document.getElementById('ch-resultado-principal');
    const resDecimales = document.getElementById('ch-resultado-decimales');
    const resMinutos = document.getElementById('ch-resultado-minutos');

    // === EVENTOS ===
    inputInicio.addEventListener('blur', (e) => formatearEntrada(e.target));
    inputFin.addEventListener('blur', (e) => formatearEntrada(e.target));
    
    btnActualInicio.addEventListener('click', () => establecerHoraActual(inputInicio, selectInicioAMPM));
    btnActualFin.addEventListener('click', () => establecerHoraActual(inputFin, selectFinAMPM));
    
    btnIntercambiar.addEventListener('click', intercambiarHoras);
    btnCalcular.addEventListener('click', calcularHoras);
    btnLimpiar.addEventListener('click', limpiarCalculadora);

    // === FUNCIONES PRINCIPALES ===

    /**
     * Formatea inputs tipo "830" a "08:30" cuando el usuario sale del campo
     */
    function formatearEntrada(input) {
        let valor = input.value.replace(/[^\d:]/g, ''); 
        if (!valor) return;

        if (!valor.includes(':')) {
            if (valor.length === 3) {
                valor = '0' + valor.charAt(0) + ':' + valor.substring(1);
            } else if (valor.length === 4) {
                valor = valor.substring(0, 2) + ':' + valor.substring(2);
            } else if (valor.length === 1 || valor.length === 2) {
                valor = (valor.length === 1 ? '0' + valor : valor) + ':00';
            }
        } else {
            let partes = valor.split(':');
            if (partes.length === 2) {
                let h = partes[0].padStart(2, '0');
                let m = partes[1].padEnd(2, '0').substring(0, 2);
                valor = `${h}:${m}`;
            }
        }
        input.value = valor;
    }

    /**
     * Obtiene la hora del dispositivo y la vuelca en los campos correspondientes
     */
    function establecerHoraActual(inputHora, selectAMPM) {
        const ahora = new Date();
        let h = ahora.getHours();
        let m = ahora.getMinutes();
        const ampm = h >= 12 ? 'PM' : 'AM';

        h = h % 12;
        h = h ? h : 12; // La hora 0 es 12
        
        const hStr = h < 10 ? '0' + h : h.toString();
        const mStr = m < 10 ? '0' + m : m.toString();

        inputHora.value = `${hStr}:${mStr}`;
        selectAMPM.value = ampm;
        ocultarError();
    }

    /**
     * Intercambia los valores de inicio y fin
     */
    function intercambiarHoras() {
        const tempHora = inputInicio.value;
        const tempAMPM = selectInicioAMPM.value;

        inputInicio.value = inputFin.value;
        selectInicioAMPM.value = selectFinAMPM.value;

        inputFin.value = tempHora;
        selectFinAMPM.value = tempAMPM;
    }

    /**
     * Valida mediante Regex que la hora esté en formato de 12 hrs (01:00 a 12:59)
     */
    function esHoraValida(horaStr) {
        const regex = /^(0?[1-9]|1[0-2]):[0-5][0-9]$/;
        return regex.test(horaStr);
    }

    /**
     * Convierte la hora en formato 12h a un total absoluto de minutos
     */
    function convertirAMinutos(horaStr, ampm) {
        let [hStr, mStr] = horaStr.split(':');
        let h = parseInt(hStr, 10);
        let m = parseInt(mStr, 10);

        if (ampm === 'AM' && h === 12) h = 0; // 12:XX AM es 0 horas absolutas
        if (ampm === 'PM' && h !== 12) h += 12; // PM añade 12 horas (salvo a las 12 PM)

        return (h * 60) + m;
    }

    /**
     * Lógica núcleo para calcular la diferencia de tiempo
     */
    function calcularHoras() {
        ocultarError();
        cajaResultado.classList.add('ch-oculto');

        const valInicio = inputInicio.value.trim();
        const valFin = inputFin.value.trim();

        // Validaciones
        if (!valInicio) return mostrarError("Introduce una hora de inicio.");
        if (!valFin) return mostrarError("Introduce una hora de finalización.");
        if (!esHoraValida(valInicio)) return mostrarError("Introduce una hora de inicio válida, por ejemplo 08:30.");
        if (!esHoraValida(valFin)) return mostrarError("Introduce una hora de finalización válida, por ejemplo 05:15.");

        // Cálculos internos siempre en minutos
        let minInicio = convertirAMinutos(valInicio, selectInicioAMPM.value);
        let minFin = convertirAMinutos(valFin, selectFinAMPM.value);

        // Si la hora de fin es estrictamente menor a la de inicio, asumimos que cruza la medianoche (es al día siguiente)
        if (minFin < minInicio) {
            minFin += 24 * 60; 
        }

        const totalMinutos = minFin - minInicio;
        mostrarResultado(totalMinutos);
    }

    /**
     * Renderiza el texto gramaticalmente correcto y los datos matemáticos
     */
    function mostrarResultado(totalMinutos) {
        const horas = Math.floor(totalMinutos / 60);
        const minutos = totalMinutos % 60;

        // Construir string principal
        let txtHoras = horas === 1 ? "1 hora" : `${horas} horas`;
        let txtMinutos = minutos === 1 ? "1 minuto" : `${minutos} minutos`;
        let textoFinal = "";

        if (horas > 0 && minutos > 0) {
            textoFinal = `${txtHoras} y ${txtMinutos}`;
        } else if (horas > 0 && minutos === 0) {
            textoFinal = txtHoras;
        } else if (horas === 0 && minutos > 0) {
            textoFinal = txtMinutos;
        } else {
            textoFinal = "0 minutos"; // Mismo horario exacto
        }

        // Decimales redondeados a máximo 2 dígitos
        const decimales = (totalMinutos / 60).toFixed(2).replace(/\.00$/, ''); 

        // Pintar en DOM
        resPrincipal.textContent = textoFinal;
        resDecimales.textContent = `${decimales} horas decimales`;
        resMinutos.textContent = `${totalMinutos} minutos`;

        cajaResultado.classList.remove('ch-oculto');
    }

    /**
     * Utilidades de UI
     */
    function mostrarError(mensaje) {
        cajaError.textContent = mensaje;
        cajaError.classList.remove('ch-oculto');
    }

    function ocultarError() {
        cajaError.classList.add('ch-oculto');
        cajaError.textContent = "";
    }

    function limpiarCalculadora() {
        inputInicio.value = '';
        inputFin.value = '';
        selectInicioAMPM.value = 'AM';
        selectFinAMPM.value = 'PM';
        ocultarError();
        cajaResultado.classList.add('ch-oculto');
    }

});
</script>

<!-- Contenedor principal encapsulado -->
<div class="calculadora-horas">
    
    <!-- Encabezado -->
    <header class="ch-header">
        <h2 class="ch-titulo">Calculadora de horas</h2>
        <p class="ch-subtitulo">Calcula cuánto tiempo hay entre una hora de inicio y una hora de finalización..</p>
    </header>

    <!-- Contenedor de formulario -->
    <div class="ch-form-container">
        
        <!-- Bloque Hora de Inicio -->
        <div class="ch-grupo">
            <label class="ch-label" for="ch-inicio-hora">Hora de inicio</label>
            <div class="ch-input-wrapper">
                <input type="text" id="ch-inicio-hora" class="ch-input-texto" placeholder="08:30" aria-label="Introducir hora de inicio">
                <select id="ch-inicio-ampm" class="ch-select" aria-label="Seleccionar AM o PM para inicio">
                    <option value="AM">AM</option>
                    <option value="PM">PM</option>
                </select>
            </div>
            <button type="button" class="ch-btn-enlace" id="ch-btn-actual-inicio">Usar hora actual</button>
        </div>

        <!-- Botón para intercambiar -->
        <div class="ch-intercambiar-wrapper">
            <button type="button" class="ch-btn-intercambiar" id="ch-btn-intercambiar" aria-label="Intercambiar hora de inicio y fin" title="Intercambiar horas">
                ⇅
            </button>
        </div>

        <!-- Bloque Hora de Finalización -->
        <div class="ch-grupo">
            <label class="ch-label" for="ch-fin-hora">Hora de finalización</label>
            <div class="ch-input-wrapper">
                <input type="text" id="ch-fin-hora" class="ch-input-texto" placeholder="05:15" aria-label="Introducir hora de finalización">
                <select id="ch-fin-ampm" class="ch-select" aria-label="Seleccionar AM o PM para finalización">
                    <option value="PM" selected="">PM</option>
                    <option value="AM">AM</option>
                </select>
            </div>
            <button type="button" class="ch-btn-enlace" id="ch-btn-actual-fin">Usar hora actual</button>
        </div>
    </div>

    <!-- Contenedor de Errores (oculto por defecto) -->
    <div id="ch-mensaje-error" class="ch-alerta ch-oculto" role="alert" aria-live="assertive"></div>

    <!-- Botones de Acción -->
    <div class="ch-acciones">
        <button type="button" class="ch-btn-primario" id="ch-btn-calcular">Calcular horas</button>
        <button type="button" class="ch-btn-secundario" id="ch-btn-limpiar">Limpiar</button>
    </div>

    <!-- Contenedor de Resultados (oculto por defecto) -->
    <div id="ch-resultado-contenedor" class="ch-resultado-caja ch-oculto" aria-live="polite">
        <p class="ch-resultado-titulo">Resultado</p>
        <p id="ch-resultado-principal" class="ch-resultado-principal">8 horas y 45 minutos</p>
        <div class="ch-resultado-detalles">
            <span id="ch-resultado-decimales" class="ch-detalle-badge">8.75 horas decimales</span>
            <span id="ch-resultado-minutos" class="ch-detalle-badge">525 minutos</span>
        </div>
    </div>

</div>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<style data-wp-block-html="css">
/* =========================================
   ESTILOS ENCAPSULADOS: Calculadora de Fechas
   ========================================= */

.calculadora-fechas {
    /* Variables de diseño (compartidas con la calculadora anterior) */
    --cf-primario: #0ea5e9;
    --cf-primario-hover: #0284c7;
    --cf-texto-oscuro: #0f172a;
    --cf-texto-medio: #475569;
    --cf-texto-claro: #64748b;
    --cf-fondo-principal: #ffffff;
    --cf-fondo-secundario: #f8fafc;
    --cf-borde: #e2e8f0;
    --cf-error-fondo: #fef2f2;
    --cf-error-texto: #b91c1c;
    --cf-error-borde: #fca5a5;
    
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    background-color: var(--cf-fondo-principal);
    border: 1px solid var(--cf-borde);
    border-radius: 12px;
    padding: 24px;
    max-width: 650px;
    margin: 0 auto;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
    color: var(--cf-texto-oscuro);
    box-sizing: border-box;
}

.calculadora-fechas * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.calculadora-fechas .cf-header {
    text-align: center;
    margin-bottom: 24px;
}

.calculadora-fechas .cf-titulo {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--cf-texto-oscuro);
    margin-bottom: 8px;
    line-height: 1.2;
}

.calculadora-fechas .cf-subtitulo {
    font-size: 0.95rem;
    color: var(--cf-texto-medio);
}

.calculadora-fechas .cf-form-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 24px;
}

.calculadora-fechas .cf-grupo {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background-color: var(--cf-fondo-secundario);
    padding: 16px;
    border-radius: 8px;
    border: 1px solid var(--cf-borde);
}

.calculadora-fechas .cf-label {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--cf-texto-oscuro);
}

.calculadora-fechas .cf-input-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.calculadora-fechas .cf-input-fecha {
    flex: 1 1 100%; /* Ocupa el 100% en móvil */
    padding: 10px 12px;
    font-size: 1rem;
    border: 1px solid var(--cf-borde);
    border-radius: 6px;
    color: var(--cf-texto-oscuro);
    outline: none;
    transition: border-color 0.2s;
    font-family: inherit;
}

.calculadora-fechas .cf-input-texto {
    flex: 1 1 calc(60% - 8px);
    padding: 10px 12px;
    font-size: 1rem;
    border: 1px solid var(--cf-borde);
    border-radius: 6px;
    color: var(--cf-texto-oscuro);
    outline: none;
    transition: border-color 0.2s;
}

.calculadora-fechas .cf-select {
    flex: 1 1 calc(40% - 8px);
    padding: 10px;
    font-size: 1rem;
    border: 1px solid var(--cf-borde);
    border-radius: 6px;
    background-color: #ffffff;
    color: var(--cf-texto-oscuro);
    cursor: pointer;
    outline: none;
    transition: border-color 0.2s;
}

.calculadora-fechas .cf-input-fecha:focus,
.calculadora-fechas .cf-input-texto:focus,
.calculadora-fechas .cf-select:focus {
    border-color: var(--cf-primario);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}

.calculadora-fechas .cf-btn-enlace {
    background: none;
    border: none;
    color: var(--cf-primario);
    font-size: 0.85rem;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    padding: 4px 0 0 0;
    width: max-content;
}

.calculadora-fechas .cf-btn-enlace:hover {
    text-decoration: underline;
}

.calculadora-fechas .cf-acciones {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
}

.calculadora-fechas .cf-btn-primario,
.calculadora-fechas .cf-btn-secundario {
    padding: 12px 20px;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 6px;
    cursor: pointer;
    text-align: center;
    border: none;
    transition: background-color 0.2s, color 0.2s;
    width: 100%;
}

.calculadora-fechas .cf-btn-primario {
    background-color: var(--cf-primario);
    color: #ffffff;
}

.calculadora-fechas .cf-btn-primario:hover {
    background-color: var(--cf-primario-hover);
}

.calculadora-fechas .cf-btn-secundario {
    background-color: transparent;
    color: var(--cf-texto-medio);
    border: 1px solid var(--cf-borde);
}

.calculadora-fechas .cf-btn-secundario:hover {
    background-color: var(--cf-fondo-secundario);
    color: var(--cf-texto-oscuro);
}

.calculadora-fechas .cf-alerta {
    background-color: var(--cf-error-fondo);
    color: var(--cf-error-texto);
    border: 1px solid var(--cf-error-borde);
    padding: 12px 16px;
    border-radius: 6px;
    font-size: 0.95rem;
    margin-bottom: 20px;
    text-align: center;
}

.calculadora-fechas .cf-resultado-caja {
    background-color: var(--cf-fondo-secundario);
    border: 1px solid var(--cf-borde);
    border-radius: 8px;
    padding: 24px;
    text-align: center;
}

.calculadora-fechas .cf-resultado-titulo {
    font-size: 0.9rem;
    color: var(--cf-texto-claro);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.calculadora-fechas .cf-resultado-principal {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--cf-primario);
    margin-bottom: 16px;
}

.calculadora-fechas .cf-resultado-detalles {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.calculadora-fechas .cf-detalle-badge {
    background-color: #ffffff;
    border: 1px solid var(--cf-borde);
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    color: var(--cf-texto-medio);
    font-weight: 500;
}

.calculadora-fechas .cf-oculto {
    display: none !important;
}

/* =========================================
   MEDIA QUERIES (Responsive - Escritorio)
   ========================================= */
@media (min-width: 580px) {
    .calculadora-fechas .cf-input-fecha {
        flex: 2; /* En escritorio, fecha ocupa más espacio pero en la misma línea */
    }
    
    .calculadora-fechas .cf-input-texto {
        flex: 1;
    }
    
    .calculadora-fechas .cf-select {
        flex: 1;
    }

    .calculadora-fechas .cf-acciones {
        flex-direction: row;
    }

    .calculadora-fechas .cf-btn-primario {
        flex: 2;
    }

    .calculadora-fechas .cf-btn-secundario {
        flex: 1;
    }
}
</style>

<script data-wp-block-html="js">
/**
 * Lógica principal encapsulada para la Calculadora de Fechas y Horas
 */
document.addEventListener('DOMContentLoaded', () => {
    
    // Elementos Inicio
    const inputFechaInicio = document.getElementById('cf-inicio-fecha');
    const inputHoraInicio = document.getElementById('cf-inicio-hora');
    const selectAMPMInicio = document.getElementById('cf-inicio-ampm');
    const btnActualInicio = document.getElementById('cf-btn-actual-inicio');
    
    // Elementos Fin
    const inputFechaFin = document.getElementById('cf-fin-fecha');
    const inputHoraFin = document.getElementById('cf-fin-hora');
    const selectAMPMFin = document.getElementById('cf-fin-ampm');
    const btnActualFin = document.getElementById('cf-btn-actual-fin');
    
    // Controles
    const btnCalcular = document.getElementById('cf-btn-calcular');
    const btnLimpiar = document.getElementById('cf-btn-limpiar');
    
    // Resultados
    const cajaError = document.getElementById('cf-mensaje-error');
    const cajaResultado = document.getElementById('cf-resultado-contenedor');
    const resPrincipal = document.getElementById('cf-resultado-principal');
    const resDecimales = document.getElementById('cf-resultado-decimales');
    const resDias = document.getElementById('cf-resultado-dias');

    // === EVENTOS ===
    inputHoraInicio.addEventListener('blur', (e) => formatearEntrada(e.target));
    inputHoraFin.addEventListener('blur', (e) => formatearEntrada(e.target));
    
    btnActualInicio.addEventListener('click', () => establecerFechaHoraActual(inputFechaInicio, inputHoraInicio, selectAMPMInicio));
    btnActualFin.addEventListener('click', () => establecerFechaHoraActual(inputFechaFin, inputHoraFin, selectAMPMFin));
    
    btnCalcular.addEventListener('click', calcularDiferenciaFechas);
    btnLimpiar.addEventListener('click', limpiarCalculadora);

    // === FUNCIONES PRINCIPALES ===

    function formatearEntrada(input) {
        let valor = input.value.replace(/[^\d:]/g, ''); 
        if (!valor) return;

        if (!valor.includes(':')) {
            if (valor.length === 3) valor = '0' + valor.charAt(0) + ':' + valor.substring(1);
            else if (valor.length === 4) valor = valor.substring(0, 2) + ':' + valor.substring(2);
            else if (valor.length === 1 || valor.length === 2) valor = (valor.length === 1 ? '0' + valor : valor) + ':00';
        } else {
            let partes = valor.split(':');
            if (partes.length === 2) {
                let h = partes[0].padStart(2, '0');
                let m = partes[1].padEnd(2, '0').substring(0, 2);
                valor = `${h}:${m}`;
            }
        }
        input.value = valor;
    }

    function establecerFechaHoraActual(inputFecha, inputHora, selectAMPM) {
        const ahora = new Date();
        
        // Formatear Fecha (YYYY-MM-DD)
        const ano = ahora.getFullYear();
        const mes = String(ahora.getMonth() + 1).padStart(2, '0');
        const dia = String(ahora.getDate()).padStart(2, '0');
        inputFecha.value = `${ano}-${mes}-${dia}`;

        // Formatear Hora (12h)
        let h = ahora.getHours();
        let m = ahora.getMinutes();
        const ampm = h >= 12 ? 'PM' : 'AM';

        h = h % 12;
        h = h ? h : 12; 
        
        inputHora.value = `${String(h).padStart(2, '0')}:${String(m).padStart(2, '0')}`;
        selectAMPM.value = ampm;
        
        ocultarError();
    }

    function esHoraValida(horaStr) {
        return /^(0?[1-9]|1[0-2]):[0-5][0-9]$/.test(horaStr);
    }

    function construirObjetoFecha(fechaStr, horaStr, ampm) {
        // Divide "YYYY-MM-DD"
        const [y, mo, d] = fechaStr.split('-');
        
        // Divide "HH:MM"
        let [hStr, mStr] = horaStr.split(':');
        let h = parseInt(hStr, 10);
        let m = parseInt(mStr, 10);

        if (ampm === 'PM' && h !== 12) h += 12;
        if (ampm === 'AM' && h === 12) h = 0;

        // Mes en JS es 0-indexado (Enero = 0)
        return new Date(y, mo - 1, d, h, m);
    }

    function calcularDiferenciaFechas() {
        ocultarError();
        cajaResultado.classList.add('cf-oculto');

        const valFechaInicio = inputFechaInicio.value;
        const valHoraInicio = inputHoraInicio.value.trim();
        const ampmInicio = selectAMPMInicio.value;

        const valFechaFin = inputFechaFin.value;
        const valHoraFin = inputHoraFin.value.trim();
        const ampmFin = selectAMPMFin.value;

        // Validaciones
        if (!valFechaInicio || !valHoraInicio) return mostrarError("Completa la fecha y hora de inicio.");
        if (!valFechaFin || !valHoraFin) return mostrarError("Completa la fecha y hora de finalización.");
        if (!esHoraValida(valHoraInicio)) return mostrarError("Hora de inicio inválida.");
        if (!esHoraValida(valHoraFin)) return mostrarError("Hora de finalización inválida.");

        // Creación de objetos Date
        const objFechaInicio = construirObjetoFecha(valFechaInicio, valHoraInicio, ampmInicio);
        const objFechaFin = construirObjetoFecha(valFechaFin, valHoraFin, ampmFin);

        const msInicio = objFechaInicio.getTime();
        const msFin = objFechaFin.getTime();

        if (msFin < msInicio) {
            return mostrarError("La fecha de finalización no puede ser anterior a la fecha de inicio.");
        }

        // Cálculos en base a milisegundos
        const diffMs = msFin - msInicio;
        const diffMinutosTotal = Math.floor(diffMs / 60000);
        
        mostrarResultado(diffMinutosTotal);
    }

    function mostrarResultado(totalMinutos) {
        const horas = Math.floor(totalMinutos / 60);
        const minutos = totalMinutos % 60;
        const totalDias = (horas / 24).toFixed(2).replace(/\.00$/, ''); 

        // Textos dinámicos
        let txtHoras = horas === 1 ? "1 hora" : `${horas} horas`;
        let txtMinutos = minutos === 1 ? "1 minuto" : `${minutos} minutos`;
        let textoFinal = horas === 0 ? txtMinutos : `${txtHoras} y ${txtMinutos}`;
        if (horas > 0 && minutos === 0) textoFinal = txtHoras;
        if (totalMinutos === 0) textoFinal = "0 minutos";

        // Decimales redondeados a máximo 2 dígitos
        const horasDecimales = (totalMinutos / 60).toFixed(2).replace(/\.00$/, ''); 

        // Actualización de DOM
        resPrincipal.textContent = textoFinal;
        resDecimales.textContent = `${horasDecimales} horas decimales`;
        
        if (horas >= 24) {
            resDias.textContent = totalDias === "1" ? "1 día" : `${totalDias} días`;
            resDias.style.display = 'inline-block';
        } else {
            resDias.style.display = 'none'; // Ocultar bloque de días si es menos de 24h
        }

        cajaResultado.classList.remove('cf-oculto');
    }

    function mostrarError(mensaje) {
        cajaError.textContent = mensaje;
        cajaError.classList.remove('cf-oculto');
    }

    function ocultarError() {
        cajaError.classList.add('cf-oculto');
        cajaError.textContent = "";
    }

    function limpiarCalculadora() {
        inputFechaInicio.value = '';
        inputHoraInicio.value = '';
        selectAMPMInicio.value = 'AM';
        
        inputFechaFin.value = '';
        inputHoraFin.value = '';
        selectAMPMFin.value = 'PM';
        
        ocultarError();
        cajaResultado.classList.add('cf-oculto');
    }

});
</script>

<!-- Contenedor principal encapsulado -->
<div class="calculadora-fechas">
    
    <!-- Encabezado -->
    <header class="cf-header">
        <h2 class="cf-titulo">Calculadora de horas entre dos fechas</h2>
        <p class="cf-subtitulo">Calcula el tiempo exacto transcurrido entre dos fechas y horas.</p>
    </header>

    <!-- Contenedor de formulario -->
    <div class="cf-form-container">
        
        <!-- Bloque Fecha y Hora de Inicio -->
        <div class="cf-grupo">
            <label class="cf-label" for="cf-inicio-fecha">Inicio</label>
            <div class="cf-input-wrapper">
                <input type="date" id="cf-inicio-fecha" class="cf-input-fecha" aria-label="Fecha de inicio">
                <input type="text" id="cf-inicio-hora" class="cf-input-texto" placeholder="08:30" aria-label="Hora de inicio">
                <select id="cf-inicio-ampm" class="cf-select" aria-label="AM o PM para inicio">
                    <option value="AM">AM</option>
                    <option value="PM">PM</option>
                </select>
            </div>
            <button type="button" class="cf-btn-enlace" id="cf-btn-actual-inicio">Usar fecha y hora actual</button>
        </div>

        <!-- Bloque Fecha y Hora de Finalización -->
        <div class="cf-grupo">
            <label class="cf-label" for="cf-fin-fecha">Finalización</label>
            <div class="cf-input-wrapper">
                <input type="date" id="cf-fin-fecha" class="cf-input-fecha" aria-label="Fecha de finalización">
                <input type="text" id="cf-fin-hora" class="cf-input-texto" placeholder="05:30" aria-label="Hora de finalización">
                <select id="cf-fin-ampm" class="cf-select" aria-label="AM o PM para finalización">
                    <option value="PM" selected="">PM</option>
                    <option value="AM">AM</option>
                </select>
            </div>
            <button type="button" class="cf-btn-enlace" id="cf-btn-actual-fin">Usar fecha y hora actual</button>
        </div>
    </div>

    <!-- Contenedor de Errores -->
    <div id="cf-mensaje-error" class="cf-alerta cf-oculto" role="alert" aria-live="assertive"></div>

    <!-- Botones de Acción -->
    <div class="cf-acciones">
        <button type="button" class="cf-btn-primario" id="cf-btn-calcular">Calcular</button>
        <button type="button" class="cf-btn-secundario" id="cf-btn-limpiar">Limpiar</button>
    </div>

    <!-- Contenedor de Resultados -->
    <div id="cf-resultado-contenedor" class="cf-resultado-caja cf-oculto" aria-live="polite">
        <p class="cf-resultado-titulo">Resultado Total</p>
        <p id="cf-resultado-principal" class="cf-resultado-principal">48 horas y 0 minutos</p>
        <div class="cf-resultado-detalles">
            <span id="cf-resultado-decimales" class="cf-detalle-badge">48.00 horas decimales</span>
            <span id="cf-resultado-dias" class="cf-detalle-badge">2 días</span>
        </div>
    </div>

</div>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<style data-wp-block-html="css">
/* =========================================
   ESTILOS ENCAPSULADOS: Calculadora de Suma
   ========================================= */

.calculadora-suma-horas {
    /* Variables de diseño compartidas */
    --csh-primario: #0ea5e9;
    --csh-primario-hover: #0284c7;
    --csh-texto-oscuro: #0f172a;
    --csh-texto-medio: #475569;
    --csh-texto-claro: #64748b;
    --csh-fondo-principal: #ffffff;
    --csh-fondo-secundario: #f8fafc;
    --csh-borde: #e2e8f0;
    --csh-error-fondo: #fef2f2;
    --csh-error-texto: #b91c1c;
    --csh-error-borde: #fca5a5;
    --csh-peligro: #ef4444;
    --csh-peligro-hover: #dc2626;
    
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    background-color: var(--csh-fondo-principal);
    border: 1px solid var(--csh-borde);
    border-radius: 12px;
    padding: 24px;
    max-width: 500px;
    margin: 0 auto;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
    color: var(--csh-texto-oscuro);
    box-sizing: border-box;
}

.calculadora-suma-horas * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.calculadora-suma-horas .csh-header {
    text-align: center;
    margin-bottom: 24px;
}

.calculadora-suma-horas .csh-titulo {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--csh-texto-oscuro);
    margin-bottom: 8px;
    line-height: 1.2;
}

.calculadora-suma-horas .csh-subtitulo {
    font-size: 0.95rem;
    color: var(--csh-texto-medio);
}

.calculadora-suma-horas .csh-form-container {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
}

.calculadora-suma-horas .csh-etiquetas-desktop {
    display: none;
    padding-right: 48px; /* Espacio para compensar el botón eliminar */
}

.calculadora-suma-horas .csh-fila {
    display: flex;
    flex-direction: column;
    gap: 8px;
    background-color: var(--csh-fondo-secundario);
    padding: 16px;
    border-radius: 8px;
    border: 1px solid var(--csh-borde);
    margin-bottom: 12px;
    position: relative;
    transition: all 0.3s ease;
}

.calculadora-suma-horas .csh-input-grupo {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.calculadora-suma-horas .csh-label-mobile {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--csh-texto-medio);
    margin-bottom: 4px;
}

.calculadora-suma-horas .csh-input-numero {
    width: 100%;
    padding: 10px 12px;
    font-size: 1rem;
    border: 1px solid var(--csh-borde);
    border-radius: 6px;
    color: var(--csh-texto-oscuro);
    outline: none;
    transition: border-color 0.2s;
    text-align: right;
}

.calculadora-suma-horas .csh-input-numero:focus {
    border-color: var(--csh-primario);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}

.calculadora-suma-horas .csh-btn-eliminar {
    background-color: transparent;
    color: var(--csh-texto-claro);
    border: none;
    font-size: 1.5rem;
    cursor: pointer;
    line-height: 1;
    padding: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: color 0.2s;
    position: absolute;
    top: 8px;
    right: 8px;
}

.calculadora-suma-horas .csh-btn-eliminar:hover:not(:disabled) {
    color: var(--csh-peligro);
}

.calculadora-suma-horas .csh-btn-eliminar:disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

.calculadora-suma-horas .csh-btn-enlace {
    background: none;
    border: none;
    color: var(--csh-primario);
    font-size: 0.9rem;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
    padding: 12px;
    border-radius: 6px;
    border: 1px dashed var(--csh-borde);
    transition: all 0.2s;
}

.calculadora-suma-horas .csh-btn-enlace:hover {
    background-color: var(--csh-fondo-secundario);
    border-color: var(--csh-primario);
}

.calculadora-suma-horas .csh-acciones {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
}

.calculadora-suma-horas .csh-btn-primario,
.calculadora-suma-horas .csh-btn-secundario {
    padding: 12px 20px;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 6px;
    cursor: pointer;
    text-align: center;
    border: none;
    transition: background-color 0.2s, color 0.2s;
    width: 100%;
}

.calculadora-suma-horas .csh-btn-primario {
    background-color: var(--csh-primario);
    color: #ffffff;
}

.calculadora-suma-horas .csh-btn-primario:hover {
    background-color: var(--csh-primario-hover);
}

.calculadora-suma-horas .csh-btn-secundario {
    background-color: transparent;
    color: var(--csh-texto-medio);
    border: 1px solid var(--csh-borde);
}

.calculadora-suma-horas .csh-btn-secundario:hover {
    background-color: var(--csh-fondo-secundario);
    color: var(--csh-texto-oscuro);
}

.calculadora-suma-horas .csh-alerta {
    background-color: var(--csh-error-fondo);
    color: var(--csh-error-texto);
    border: 1px solid var(--csh-error-borde);
    padding: 12px 16px;
    border-radius: 6px;
    font-size: 0.95rem;
    margin-bottom: 20px;
    text-align: center;
}

.calculadora-suma-horas .csh-resultado-caja {
    background-color: var(--csh-fondo-secundario);
    border: 1px solid var(--csh-borde);
    border-radius: 8px;
    padding: 24px;
    text-align: center;
}

.calculadora-suma-horas .csh-resultado-titulo {
    font-size: 0.9rem;
    color: var(--csh-texto-claro);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.calculadora-suma-horas .csh-resultado-principal {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--csh-primario);
    margin-bottom: 16px;
}

.calculadora-suma-horas .csh-resultado-detalles {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.calculadora-suma-horas .csh-detalle-badge {
    background-color: #ffffff;
    border: 1px solid var(--csh-borde);
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    color: var(--csh-texto-medio);
    font-weight: 500;
}

.calculadora-suma-horas .csh-oculto {
    display: none !important;
}

/* =========================================
   MEDIA QUERIES (Responsive - Escritorio)
   ========================================= */
@media (min-width: 480px) {
    .calculadora-suma-horas .csh-etiquetas-desktop {
        display: flex;
        font-size: 0.9rem;
        font-weight: 600;
        color: var(--csh-texto-oscuro);
        padding-left: 16px;
    }

    .calculadora-suma-horas .csh-etiquetas-desktop span {
        flex: 1;
    }

    .calculadora-suma-horas .csh-fila {
        flex-direction: row;
        align-items: center;
        padding: 12px 48px 12px 16px; /* Espacio derecho para el botón X */
        background-color: transparent;
    }

    .calculadora-suma-horas .csh-label-mobile {
        display: none; /* Oculta etiquetas individuales en escritorio */
    }

    .calculadora-suma-horas .csh-btn-eliminar {
        position: absolute;
        top: 50%;
        right: 12px;
        transform: translateY(-50%);
    }

    .calculadora-suma-horas .csh-acciones {
        flex-direction: row;
    }

    .calculadora-suma-horas .csh-btn-primario {
        flex: 2;
    }

    .calculadora-suma-horas .csh-btn-secundario {
        flex: 1;
    }
}
</style>

<script data-wp-block-html="js">
/**
 * Lógica principal encapsulada para la Calculadora de Suma de Horas
 */
document.addEventListener('DOMContentLoaded', () => {
    
    // Elementos del DOM
    const contenedorFilas = document.getElementById('csh-filas-contenedor');
    const btnAgregar = document.getElementById('csh-btn-agregar');
    const btnCalcular = document.getElementById('csh-btn-calcular');
    const btnLimpiar = document.getElementById('csh-btn-limpiar');
    
    const cajaError = document.getElementById('csh-mensaje-error');
    const cajaResultado = document.getElementById('csh-resultado-contenedor');
    const resPrincipal = document.getElementById('csh-resultado-principal');
    const resDecimales = document.getElementById('csh-resultado-decimales');
    const resMinutos = document.getElementById('csh-resultado-minutos-totales');

    // === EVENTOS ===
    btnAgregar.addEventListener('click', agregarFila);
    btnCalcular.addEventListener('click', calcularSuma);
    btnLimpiar.addEventListener('click', limpiarCalculadora);
    
    // Delegación de eventos para los botones de eliminar fila dinámicos
    contenedorFilas.addEventListener('click', (e) => {
        if (e.target.classList.contains('csh-btn-eliminar')) {
            eliminarFila(e.target);
        }
    });

    // Delegación para evitar números negativos al escribir
    contenedorFilas.addEventListener('input', (e) => {
        if (e.target.classList.contains('csh-input-numero')) {
            if (e.target.value < 0) e.target.value = 0;
        }
    });

    // === FUNCIONES PRINCIPALES ===

    /**
     * Agrega una nueva fila de inputs al formulario
     */
    function agregarFila() {
        const filaHTML = `
            <div class="csh-fila">
                <div class="csh-input-grupo">
                    <label class="csh-label-mobile">Horas</label>
                    <input type="number" class="csh-input-numero csh-horas" placeholder="0" min="0" aria-label="Horas">
                </div>
                <div class="csh-input-grupo">
                    <label class="csh-label-mobile">Minutos</label>
                    <input type="number" class="csh-input-numero csh-minutos" placeholder="0" min="0" aria-label="Minutos">
                </div>
                <button type="button" class="csh-btn-eliminar" aria-label="Eliminar fila">&times;</button>
            </div>
        `;
        
        contenedorFilas.insertAdjacentHTML('beforeend', filaHTML);
        actualizarEstadoBotonesEliminar();
    }

    /**
     * Elimina una fila específica del DOM
     */
    function eliminarFila(boton) {
        const filas = contenedorFilas.querySelectorAll('.csh-fila');
        if (filas.length > 1) {
            boton.closest('.csh-fila').remove();
            actualizarEstadoBotonesEliminar();
        }
    }

    /**
     * Desactiva el botón de eliminar si solo queda 1 fila
     */
    function actualizarEstadoBotonesEliminar() {
        const botones = contenedorFilas.querySelectorAll('.csh-btn-eliminar');
        const soloQuedaUno = botones.length <= 1;
        
        botones.forEach(btn => {
            btn.disabled = soloQuedaUno;
        });
    }

    /**
     * Recorre todas las filas, suma los valores y procesa el total
     */
    function calcularSuma() {
        ocultarError();
        cajaResultado.classList.add('csh-oculto');

        const inputsHoras = contenedorFilas.querySelectorAll('.csh-horas');
        const inputsMinutos = contenedorFilas.querySelectorAll('.csh-minutos');
        
        let totalMinutosAcumulados = 0;
        let camposLlenos = false;

        for (let i = 0; i < inputsHoras.length; i++) {
            const valHora = parseInt(inputsHoras[i].value) || 0;
            const valMinuto = parseInt(inputsMinutos[i].value) || 0;
            
            if (valHora > 0 || valMinuto > 0) {
                camposLlenos = true;
            }

            // Convertimos todo a minutos para evitar errores matemáticos
            totalMinutosAcumulados += (valHora * 60) + valMinuto;
        }

        if (!camposLlenos) {
            return mostrarError("Introduce al menos un valor para calcular.");
        }

        mostrarResultado(totalMinutosAcumulados);
    }

    /**
     * Renderiza los resultados calculados
     */
    function mostrarResultado(totalMinutosAcumulados) {
        const horas = Math.floor(totalMinutosAcumulados / 60);
        const minutos = totalMinutosAcumulados % 60;

        let txtHoras = horas === 1 ? "1 hora" : `${horas} horas`;
        let txtMinutos = minutos === 1 ? "1 minuto" : `${minutos} minutos`;
        let textoFinal = "";

        if (horas > 0 && minutos > 0) {
            textoFinal = `${txtHoras} y ${txtMinutos}`;
        } else if (horas > 0 && minutos === 0) {
            textoFinal = txtHoras;
        } else if (horas === 0 && minutos > 0) {
            textoFinal = txtMinutos;
        } else {
            textoFinal = "0 minutos";
        }

        const decimales = (totalMinutosAcumulados / 60).toFixed(2).replace(/\.00$/, ''); 

        resPrincipal.textContent = textoFinal;
        resDecimales.textContent = `${decimales} horas decimales`;
        resMinutos.textContent = `${totalMinutosAcumulados} minutos totales`;

        cajaResultado.classList.remove('csh-oculto');
    }

    /**
     * Utilidades
     */
    function mostrarError(mensaje) {
        cajaError.textContent = mensaje;
        cajaError.classList.remove('csh-oculto');
    }

    function ocultarError() {
        cajaError.classList.add('csh-oculto');
        cajaError.textContent = "";
    }

    function limpiarCalculadora() {
        // Reiniciamos al estado base con 2 filas vacías
        contenedorFilas.innerHTML = '';
        agregarFila();
        agregarFila();
        ocultarError();
        cajaResultado.classList.add('csh-oculto');
    }

    // Inicializar estado de botones al cargar
    actualizarEstadoBotonesEliminar();
});
</script>

<!-- Contenedor principal encapsulado -->
<div class="calculadora-suma-horas">
    
    <!-- Encabezado -->
    <header class="csh-header">
        <h2 class="csh-titulo">Suma de Horas y Minutos</h2>
        <p class="csh-subtitulo">Suma múltiples duraciones de tiempo de forma sencilla.</p>
    </header>

    <!-- Contenedor de formulario dinámico -->
    <div class="csh-form-container"> 
        
        <div class="csh-etiquetas-desktop">
            <span>Horas</span>
            <span>Minutos</span>
        </div>

        <div id="csh-filas-contenedor">
            <!-- Fila 1 -->
            <div class="csh-fila">
                <div class="csh-input-grupo">
                    <label class="csh-label-mobile">Horas</label>
                    <input type="number" class="csh-input-numero csh-horas" placeholder="0" min="0" aria-label="Horas">
                </div>
                <div class="csh-input-grupo">
                    <label class="csh-label-mobile">Minutos</label>
                    <input type="number" class="csh-input-numero csh-minutos" placeholder="0" min="0" aria-label="Minutos">
                </div>
                <button type="button" class="csh-btn-eliminar" aria-label="Eliminar fila" disabled="">×</button>
            </div>
            
            <!-- Fila 2 -->
            <div class="csh-fila">
                <div class="csh-input-grupo">
                    <label class="csh-label-mobile">Horas</label>
                    <input type="number" class="csh-input-numero csh-horas" placeholder="0" min="0" aria-label="Horas">
                </div>
                <div class="csh-input-grupo">
                    <label class="csh-label-mobile">Minutos</label>
                    <input type="number" class="csh-input-numero csh-minutos" placeholder="0" min="0" aria-label="Minutos">
                </div>
                <button type="button" class="csh-btn-eliminar" aria-label="Eliminar fila" disabled="">×</button>
            </div>
        </div>

        <button type="button" class="csh-btn-enlace" id="csh-btn-agregar">+ Añadir más tiempo</button>
    </div>

    <!-- Contenedor de Errores -->
    <div id="csh-mensaje-error" class="csh-alerta csh-oculto" role="alert" aria-live="assertive"></div>

    <!-- Botones de Acción -->
    <div class="csh-acciones">
        <button type="button" class="csh-btn-primario" id="csh-btn-calcular">Sumar tiempos</button>
        <button type="button" class="csh-btn-secundario" id="csh-btn-limpiar">Limpiar</button>
    </div>

    <!-- Contenedor de Resultados -->
    <div id="csh-resultado-contenedor" class="csh-resultado-caja csh-oculto" aria-live="polite">
        <p class="csh-resultado-titulo">Tiempo Total</p>
        <p id="csh-resultado-principal" class="csh-resultado-principal">0 horas y 0 minutos</p>
        <div class="csh-resultado-detalles">
            <span id="csh-resultado-decimales" class="csh-detalle-badge">0.00 horas decimales</span>
            <span id="csh-resultado-minutos-totales" class="csh-detalle-badge">0 minutos totales</span>
        </div>
    </div>

</div>



<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>



<style data-wp-block-html="css">
/* =========================================
   ESTILOS ENCAPSULADOS: Calculadora de Resta
   ========================================= */

.calculadora-resta-horas {
    /* Variables de diseño compartidas */
    --crh-primario: #0ea5e9;
    --crh-primario-hover: #0284c7;
    --crh-texto-oscuro: #0f172a;
    --crh-texto-medio: #475569;
    --crh-texto-claro: #64748b;
    --crh-fondo-principal: #ffffff;
    --crh-fondo-secundario: #f8fafc;
    --crh-borde: #e2e8f0;
    --crh-error-fondo: #fef2f2;
    --crh-error-texto: #b91c1c;
    --crh-error-borde: #fca5a5;
    --crh-negativo: #ef4444;
    
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    background-color: var(--crh-fondo-principal);
    border: 1px solid var(--crh-borde);
    border-radius: 12px;
    padding: 24px;
    max-width: 500px;
    margin: 0 auto;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
    color: var(--crh-texto-oscuro);
    box-sizing: border-box;
}

.calculadora-resta-horas * {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.calculadora-resta-horas .crh-header {
    text-align: center;
    margin-bottom: 24px;
}

.calculadora-resta-horas .crh-titulo {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--crh-texto-oscuro);
    margin-bottom: 8px;
    line-height: 1.2;
}

.calculadora-resta-horas .crh-subtitulo {
    font-size: 0.95rem;
    color: var(--crh-texto-medio);
}

.calculadora-resta-horas .crh-form-container {
    display: flex;
    flex-direction: column;
    margin-bottom: 24px;
}

.calculadora-resta-horas .crh-bloque {
    background-color: var(--crh-fondo-secundario);
    padding: 16px;
    border-radius: 8px;
    border: 1px solid var(--crh-borde);
}

.calculadora-resta-horas .crh-bloque-titulo {
    font-size: 1rem;
    font-weight: 600;
    color: var(--crh-texto-oscuro);
    margin-bottom: 12px;
    text-align: center;
}

.calculadora-resta-horas .crh-fila {
    display: flex;
    gap: 12px;
}

.calculadora-resta-horas .crh-input-grupo {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.calculadora-resta-horas .crh-label {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--crh-texto-medio);
    margin-bottom: 6px;
}

.calculadora-resta-horas .crh-input-numero {
    width: 100%;
    padding: 10px 12px;
    font-size: 1rem;
    border: 1px solid var(--crh-borde);
    border-radius: 6px;
    color: var(--crh-texto-oscuro);
    outline: none;
    transition: border-color 0.2s;
    text-align: right;
}

.calculadora-resta-horas .crh-input-numero:focus {
    border-color: var(--crh-primario);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.15);
}

.calculadora-resta-horas .crh-operador-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px 0;
    position: relative;
    z-index: 2;
}

.calculadora-resta-horas .crh-icono-operador {
    background-color: #ffffff;
    border: 1px solid var(--crh-borde);
    color: var(--crh-texto-medio);
    border-radius: 50%;
    width: 36px;
    height: 36px;
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.calculadora-resta-horas .crh-acciones {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 24px;
}

.calculadora-resta-horas .crh-btn-primario,
.calculadora-resta-horas .crh-btn-secundario {
    padding: 12px 20px;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 6px;
    cursor: pointer;
    text-align: center;
    border: none;
    transition: background-color 0.2s, color 0.2s;
    width: 100%;
}

.calculadora-resta-horas .crh-btn-primario {
    background-color: var(--crh-primario);
    color: #ffffff;
}

.calculadora-resta-horas .crh-btn-primario:hover {
    background-color: var(--crh-primario-hover);
}

.calculadora-resta-horas .crh-btn-secundario {
    background-color: transparent;
    color: var(--crh-texto-medio);
    border: 1px solid var(--crh-borde);
}

.calculadora-resta-horas .crh-btn-secundario:hover {
    background-color: var(--crh-fondo-secundario);
    color: var(--crh-texto-oscuro);
}

.calculadora-resta-horas .crh-alerta {
    background-color: var(--crh-error-fondo);
    color: var(--crh-error-texto);
    border: 1px solid var(--crh-error-borde);
    padding: 12px 16px;
    border-radius: 6px;
    font-size: 0.95rem;
    margin-bottom: 20px;
    text-align: center;
}

.calculadora-resta-horas .crh-resultado-caja {
    background-color: var(--crh-fondo-secundario);
    border: 1px solid var(--crh-borde);
    border-radius: 8px;
    padding: 24px;
    text-align: center;
}

.calculadora-resta-horas .crh-resultado-titulo {
    font-size: 0.9rem;
    color: var(--crh-texto-claro);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

.calculadora-resta-horas .crh-resultado-principal {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--crh-primario);
    margin-bottom: 16px;
}

.calculadora-resta-horas .crh-resultado-principal.crh-texto-negativo {
    color: var(--crh-negativo);
}

.calculadora-resta-horas .crh-resultado-detalles {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.calculadora-resta-horas .crh-detalle-badge {
    background-color: #ffffff;
    border: 1px solid var(--crh-borde);
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    color: var(--crh-texto-medio);
    font-weight: 500;
}

.calculadora-resta-horas .crh-oculto {
    display: none !important;
}

/* =========================================
   MEDIA QUERIES (Responsive - Escritorio)
   ========================================= */
@media (min-width: 480px) {
    .calculadora-resta-horas .crh-acciones {
        flex-direction: row;
    }

    .calculadora-resta-horas .crh-btn-primario {
        flex: 2;
    }

    .calculadora-resta-horas .crh-btn-secundario {
        flex: 1;
    }
}
</style>

<script data-wp-block-html="js">
/**
 * Lógica principal encapsulada para la Calculadora de Resta de Horas
 */
document.addEventListener('DOMContentLoaded', () => {
    
    // Elementos del DOM (Tiempo Base)
    const inputBaseHoras = document.getElementById('crh-base-horas');
    const inputBaseMinutos = document.getElementById('crh-base-minutos');
    
    // Elementos del DOM (Tiempo a Restar)
    const inputRestaHoras = document.getElementById('crh-resta-horas');
    const inputRestaMinutos = document.getElementById('crh-resta-minutos');
    
    // Controles
    const btnCalcular = document.getElementById('crh-btn-calcular');
    const btnLimpiar = document.getElementById('crh-btn-limpiar');
    
    // Resultados y Notificaciones
    const cajaError = document.getElementById('crh-mensaje-error');
    const cajaResultado = document.getElementById('crh-resultado-contenedor');
    const resPrincipal = document.getElementById('crh-resultado-principal');
    const resDecimales = document.getElementById('crh-resultado-decimales');
    const resMinutos = document.getElementById('crh-resultado-minutos-totales');

    // === EVENTOS ===
    btnCalcular.addEventListener('click', calcularResta);
    btnLimpiar.addEventListener('click', limpiarCalculadora);

    // Prevenir ingreso de números negativos en los campos
    const inputsNumericos = document.querySelectorAll('.crh-input-numero');
    inputsNumericos.forEach(input => {
        input.addEventListener('input', (e) => {
            if (e.target.value < 0) e.target.value = 0;
        });
    });

    // === FUNCIONES PRINCIPALES ===

    function calcularResta() {
        ocultarError();
        cajaResultado.classList.add('crh-oculto');
        resPrincipal.classList.remove('crh-texto-negativo');

        // Obtener valores (si están vacíos, se asume 0)
        const baseHoras = parseInt(inputBaseHoras.value) || 0;
        const baseMinutos = parseInt(inputBaseMinutos.value) || 0;
        
        const restaHoras = parseInt(inputRestaHoras.value) || 0;
        const restaMinutos = parseInt(inputRestaMinutos.value) || 0;

        // Validar que exista al menos algún dato introducido
        if (baseHoras === 0 && baseMinutos === 0 && restaHoras === 0 && restaMinutos === 0) {
            return mostrarError("Introduce valores para realizar el cálculo.");
        }

        // Convertir todo a minutos absolutos
        const totalBaseMinutos = (baseHoras * 60) + baseMinutos;
        const totalRestaMinutos = (restaHoras * 60) + restaMinutos;

        // Calcular la diferencia neta
        let diferenciaMinutos = totalBaseMinutos - totalRestaMinutos;
        
        // Comprobar si el resultado es negativo
        const esNegativo = diferenciaMinutos < 0;
        
        // Usar valor absoluto para formatear matemáticamente
        diferenciaMinutos = Math.abs(diferenciaMinutos);

        mostrarResultado(diferenciaMinutos, esNegativo);
    }

    function mostrarResultado(totalMinutos, esNegativo) {
        const horas = Math.floor(totalMinutos / 60);
        const minutos = totalMinutos % 60;

        // Textos dinámicos en singular/plural
        let txtHoras = horas === 1 ? "1 hora" : `${horas} horas`;
        let txtMinutos = minutos === 1 ? "1 minuto" : `${minutos} minutos`;
        let textoFinal = "";

        // Construcción de la cadena de tiempo
        if (horas > 0 && minutos > 0) {
            textoFinal = `${txtHoras} y ${txtMinutos}`;
        } else if (horas > 0 && minutos === 0) {
            textoFinal = txtHoras;
        } else if (horas === 0 && minutos > 0) {
            textoFinal = txtMinutos;
        } else {
            textoFinal = "0 minutos";
        }

        // Añadir formato de número negativo si aplica
        if (esNegativo && totalMinutos > 0) {
            textoFinal = `- ${textoFinal}`;
            resPrincipal.classList.add('crh-texto-negativo'); // Aplica color rojo al texto principal
        }

        // Cálculos complementarios
        const decimales = (totalMinutos / 60).toFixed(2).replace(/\.00$/, '');
        let textoDecimal = esNegativo ? `-${decimales}` : decimales;
        let textoMinsTotales = esNegativo ? `-${totalMinutos}` : totalMinutos;

        // Pintar en el DOM
        resPrincipal.textContent = textoFinal;
        resDecimales.textContent = `${textoDecimal} horas decimales`;
        resMinutos.textContent = `${textoMinsTotales} minutos`;

        cajaResultado.classList.remove('crh-oculto');
    }

    function mostrarError(mensaje) {
        cajaError.textContent = mensaje;
        cajaError.classList.remove('crh-oculto');
    }

    function ocultarError() {
        cajaError.classList.add('crh-oculto');
        cajaError.textContent = "";
    }

    function limpiarCalculadora() {
        inputBaseHoras.value = '';
        inputBaseMinutos.value = '';
        inputRestaHoras.value = '';
        inputRestaMinutos.value = '';
        
        ocultarError();
        cajaResultado.classList.add('crh-oculto');
        resPrincipal.classList.remove('crh-texto-negativo');
    }

});
</script>

<!-- Contenedor principal encapsulado -->
<div class="calculadora-resta-horas">
    
    <!-- Encabezado -->
    <header class="crh-header">
        <h2 class="crh-titulo">Restar Horas y Minutos</h2>
        <p class="crh-subtitulo">Calcula la diferencia exacta restando un tiempo a otro.</p>
    </header> 

    <!-- Contenedor de formulario -->
    <div class="crh-form-container">
        
        <!-- Bloque Tiempo Base -->
        <div class="crh-bloque">
            <p class="crh-bloque-titulo">Tiempo base</p>
            <div class="crh-fila">
                <div class="crh-input-grupo">
                    <label class="crh-label" for="crh-base-horas">Horas</label>
                    <input type="number" id="crh-base-horas" class="crh-input-numero" placeholder="0" min="0" aria-label="Horas base">
                </div>
                <div class="crh-input-grupo">
                    <label class="crh-label" for="crh-base-minutos">Minutos</label>
                    <input type="number" id="crh-base-minutos" class="crh-input-numero" placeholder="0" min="0" aria-label="Minutos base">
                </div>
            </div>
        </div>

        <!-- Símbolo de Resta -->
        <div class="crh-operador-wrapper">
            <div class="crh-icono-operador" aria-hidden="true">−</div>
        </div>

        <!-- Bloque Tiempo a Restar -->
        <div class="crh-bloque">
            <p class="crh-bloque-titulo">Tiempo a restar</p>
            <div class="crh-fila">
                <div class="crh-input-grupo">
                    <label class="crh-label" for="crh-resta-horas">Horas</label>
                    <input type="number" id="crh-resta-horas" class="crh-input-numero" placeholder="0" min="0" aria-label="Horas a restar">
                </div>
                <div class="crh-input-grupo">
                    <label class="crh-label" for="crh-resta-minutos">Minutos</label>
                    <input type="number" id="crh-resta-minutos" class="crh-input-numero" placeholder="0" min="0" aria-label="Minutos a restar">
                </div>
            </div>
        </div>

    </div>

    <!-- Contenedor de Errores -->
    <div id="crh-mensaje-error" class="crh-alerta crh-oculto" role="alert" aria-live="assertive"></div>

    <!-- Botones de Acción -->
    <div class="crh-acciones">
        <button type="button" class="crh-btn-primario" id="crh-btn-calcular">Restar tiempos</button>
        <button type="button" class="crh-btn-secundario" id="crh-btn-limpiar">Limpiar</button>
    </div>

    <!-- Contenedor de Resultados -->
    <div id="crh-resultado-contenedor" class="crh-resultado-caja crh-oculto" aria-live="polite">
        <p class="crh-resultado-titulo">Resultado Final</p>
        <p id="crh-resultado-principal" class="crh-resultado-principal">0 horas y 0 minutos</p>
        <div class="crh-resultado-detalles">
            <span id="crh-resultado-decimales" class="crh-detalle-badge">0.00 horas decimales</span>
            <span id="crh-resultado-minutos-totales" class="crh-detalle-badge">0 minutos</span>
        </div>
    </div>

</div>



<h2 class="wp-block-heading">¿Para qué sirve una calculadora de horas?</h2>



<p class="wp-block-paragraph">Una calculadora de horas permite determinar de forma rápida cuánto tiempo ha transcurrido entre dos momentos. Es útil para calcular jornadas de trabajo, intervalos de tiempo, duraciones y otros periodos sin tener que hacer las operaciones manualmente.</p>



<p class="wp-block-paragraph">También puedes utilizar estas herramientas para sumar o restar horas y minutos, especialmente cuando necesitas trabajar con varias duraciones diferentes.</p>



<h2 class="wp-block-heading">¿Cómo calcular horas entre dos horas?</h2>



<p class="wp-block-paragraph">Solo tienes que introducir la hora de inicio y la hora de finalización. La calculadora determina automáticamente la diferencia y muestra el resultado en horas y minutos.</p>



<p class="wp-block-paragraph">Si el intervalo pasa de un día a otro, también puedes calcularlo fácilmente. Por ejemplo, puedes saber cuánto tiempo transcurre entre las 10:00 p. m. y las 2:00 a. m.</p>



<h2 class="wp-block-heading">¿Cómo calcular el tiempo entre dos fechas?</h2>



<p class="wp-block-paragraph">Cuando necesitas calcular un periodo que abarca más de un día, la calculadora de horas entre dos fechas permite introducir las fechas y horas exactas de inicio y finalización.</p>



<p class="wp-block-paragraph">El resultado muestra el tiempo total transcurrido entre ambos momentos, lo que resulta útil para periodos de trabajo, proyectos, eventos o cualquier otra actividad que tenga una duración específica.</p>



<h2 class="wp-block-heading">¿Cómo sumar horas y minutos?</h2>



<p class="wp-block-paragraph">Para sumar varias duraciones, introduce cada cantidad de horas y minutos en la calculadora de suma. La herramienta realiza la operación automáticamente y muestra el tiempo total.</p>



<p class="wp-block-paragraph">Esto resulta especialmente práctico cuando necesitas combinar diferentes periodos de tiempo sin preocuparte por convertir manualmente los minutos que superan una hora.</p>



<h2 class="wp-block-heading">¿Cómo restar horas y minutos?</h2>



<p class="wp-block-paragraph">La calculadora de resta permite conocer la diferencia entre dos cantidades de tiempo. Solo tienes que introducir los valores que quieres comparar para obtener el resultado.</p>



<p class="wp-block-paragraph">Es útil para calcular cuánto tiempo queda entre dos duraciones o determinar la diferencia exacta entre distintos periodos expresados en horas y minutos.</p>



<h2 class="wp-block-heading">Calcula horas y minutos fácilmente</h2>



<p class="wp-block-paragraph">Estas herramientas están diseñadas para resolver diferentes operaciones relacionadas con el tiempo de manera rápida y sencilla. Puedes elegir la calculadora que corresponda a lo que necesitas y obtener el resultado en pocos segundos.</p>



<p class="wp-block-paragraph">No necesitas realizar conversiones manuales ni utilizar fórmulas complicadas. Introduce los datos, realiza el cálculo y comprueba el resultado.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/blog/calculadora-de-horas/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Test de hábitos de estudio</title>
		<link>https://cursosgratisunam.com/blog/test-de-habitos-de-estudio/</link>
					<comments>https://cursosgratisunam.com/blog/test-de-habitos-de-estudio/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Wed, 17 Dec 2025 04:26:54 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12325</guid>

					<description><![CDATA[<div><img width="900" height="460" src="https://cursosgratisunam.com/wp-content/uploads/2025/12/test-para-habitos-de-estudio.webp" class="attachment-large size-large wp-post-image" alt="habitos de estudio cuestionario" decoding="async" fetchpriority="high" srcset="https://cursosgratisunam.com/wp-content/uploads/2025/12/test-para-habitos-de-estudio.webp 900w, https://cursosgratisunam.com/wp-content/uploads/2025/12/test-para-habitos-de-estudio-768x393.webp 768w" sizes="(max-width: 900px) 100vw, 900px" /></div>Si sientes que estudias “mucho” pero los resultados no siempre acompañan, este Test de hábitos de&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="900" height="460" src="https://cursosgratisunam.com/wp-content/uploads/2025/12/test-para-habitos-de-estudio.webp" class="attachment-large size-large wp-post-image" alt="habitos de estudio cuestionario" decoding="async" srcset="https://cursosgratisunam.com/wp-content/uploads/2025/12/test-para-habitos-de-estudio.webp 900w, https://cursosgratisunam.com/wp-content/uploads/2025/12/test-para-habitos-de-estudio-768x393.webp 768w" sizes="(max-width: 900px) 100vw, 900px" /></div>
<p class="wp-block-paragraph">Si sientes que estudias “mucho” pero los resultados no siempre acompañan, este <strong>Test de hábitos de estudio</strong> te va a ayudar a ponerle nombre a lo que está pasando. En pocos minutos podrás evaluar qué tan bien estás manejando tu <strong>planificación</strong>, tu <strong>entorno de estudio</strong>, tu <strong>concentración</strong>, tus <strong>técnicas para aprender</strong> y tu <strong>constancia</strong>.</p>



<p class="wp-block-paragraph">Responde las 50 preguntas con honestidad, calcula tu puntaje y revisa tu nivel de hábitos para saber qué estás haciendo bien y qué conviene ajustar para mejorar tu rendimiento. Y si prefieres hacerlo sin conexión o imprimirlo, al final también podrás <strong>descargar el test en PDF</strong>.</p>



<style>
.habitos-test {
    font-family: Arial, sans-serif;
    max-width: 800px;
    margin: auto;
    padding: 20px;
    border-radius: 12px;
    background-color: #f9f9f9;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
.habitos-test h2 {
    text-align: center;
    margin-bottom: 20px;
}
.habitos-test .item {
    margin-bottom: 45px;
}
.habitos-test label {
    display: block;
    margin: 5px 0;
}
.habitos-test select {
    width: 100%;
    padding: 5px;
    border-radius: 6px;
    border: 1px solid #ccc;
}
.habitos-test button {
    display: block;
    margin: 30px auto 10px;
    padding: 12px 24px;
    font-size: 16px;
    border: none;
    border-radius: 8px;
    background-color: #0073aa;
    color: white;
    cursor: pointer;
}
.habitos-test button:hover {
    background-color: #005f8d;
}

.habitos-result {
    margin-top: 30px;
    padding: 0;
    font-size: 16px;
    background: transparent;
    border-radius: 12px;
    box-shadow: none;
    line-height: 1.8;
    color: #2d3748;
}

.habitos-result:not(:empty) {
    padding: 30px;
    background: linear-gradient(135deg, #ffeaa7 0%, #fdcb6e 100%);
    box-shadow: 0 4px 15px rgba(253, 203, 110, 0.3);
}

.habitos-test label {
    font-size: 18px !important;
    display: block;
    margin-bottom: 12px;
    color: red;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.6;
}
</style>

<div class="habitos-test">
    <h2>Test de Hábitos de Estudio</h2>
    <form id="habitosForm">
        <div id="itemsContainer"></div>
        <button type="button" onclick="calcularResultadoHabitos()">Calcular Resultado</button>
    </form>
    <div class="habitos-result" id="resultadoHabitos"></div>
</div>





<p class="wp-block-paragraph">Test de hábitos de estudio en DPF</p>



<h2 class="wp-block-heading">Test de hábitos de estudio en PDF</h2>



<p class="wp-block-paragraph">Si prefieres realizar el test sin conexión o imprimirlo, aquí puedes descargar el <strong>Test de hábitos de estudio en PDF</strong>. Ideal para responderlo con calma, repetirlo más adelante y comparar resultados, o usarlo como herramienta de autoevaluación y seguimiento de tus rutinas de estudio.</p>



<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-100 is-style-outline is-style-outline--1"><a class="wp-block-button__link has-luminous-vivid-amber-background-color has-background wp-element-button" href="https://cursosgratisunam.com/wp-content/uploads/2025/12/test-habitos-de-estudio.pdf" style="border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-left-radius:5px;border-bottom-right-radius:5px" target="_blank" rel="noreferrer noopener" data-wpel-link="internal"><strong>DESCARGAR TEST EN PDF</strong></a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/blog/test-de-habitos-de-estudio/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Test de Trabajo en Equipo</title>
		<link>https://cursosgratisunam.com/blog/test-de-trabajo-en-equipo/</link>
					<comments>https://cursosgratisunam.com/blog/test-de-trabajo-en-equipo/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Sat, 15 Nov 2025 04:02:47 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12297</guid>

					<description><![CDATA[<div><img width="900" height="460" src="https://cursosgratisunam.com/wp-content/uploads/2025/11/mini-test-de-trabajo-en-equipo.webp" class="attachment-large size-large wp-post-image" alt="test psicometrico de trabajo en equipo" decoding="async" srcset="https://cursosgratisunam.com/wp-content/uploads/2025/11/mini-test-de-trabajo-en-equipo.webp 900w, https://cursosgratisunam.com/wp-content/uploads/2025/11/mini-test-de-trabajo-en-equipo-768x393.webp 768w" sizes="(max-width: 900px) 100vw, 900px" /></div>Cada persona aporta algo distinto cuando forma parte de un grupo, ya sea liderazgo, análisis, motivación&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="900" height="460" src="https://cursosgratisunam.com/wp-content/uploads/2025/11/mini-test-de-trabajo-en-equipo.webp" class="attachment-large size-large wp-post-image" alt="test psicometrico de trabajo en equipo" decoding="async" loading="lazy" srcset="https://cursosgratisunam.com/wp-content/uploads/2025/11/mini-test-de-trabajo-en-equipo.webp 900w, https://cursosgratisunam.com/wp-content/uploads/2025/11/mini-test-de-trabajo-en-equipo-768x393.webp 768w" sizes="auto, (max-width: 900px) 100vw, 900px" /></div>
<p class="wp-block-paragraph">Cada persona aporta algo distinto cuando forma parte de un grupo, ya sea liderazgo, análisis, motivación o autonomía. Este test está diseñado para ayudarte a descubrir cuál es tu estilo natural dentro de un equipo y cómo influye en la forma en que colaboras con los demás.</p>



<p class="wp-block-paragraph"><strong>Responde de forma sincera</strong> para obtener un resultado preciso. No hay respuestas correctas o incorrectas: todos los perfiles son valiosos y aportan algo único al trabajo colectivo. Al final, conocer tu estilo te ayudará a mejorar tu comunicación, tu forma de colaborar y tu desempeño en cualquier proyecto grupal.</p>



<div class="team-test-container">
  <style>
    .team-test-container {
      max-width: 900px;
      margin: 0 auto;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      background: #f5f5f7;
      padding: 20px;
      border-radius: 12px;
      box-shadow: 0 10px 25px rgba(0,0,0,0.08);
    }

    .team-test-title {
      text-align: center;
      margin-bottom: 10px;
      font-size: 1.8rem;
      font-weight: 700;
      color: #222;
    }

    .team-test-subtitle {
      text-align: center;
      margin-bottom: 20px;
      color: #555;
      font-size: 0.95rem;
    }

    .team-test-question {
      background: #ffffff;
      margin-bottom: 16px;
      padding: 16px 18px;
      border-radius: 10px;
      border: 1px solid #e0e0e0;
      transition: box-shadow 0.2s ease, transform 0.1s ease, border-color 0.2s ease;
    }

    .team-test-question:hover {
      box-shadow: 0 4px 14px rgba(0,0,0,0.07);
      transform: translateY(-1px);
      border-color: #d0d0ff;
    }

    .team-test-question-number {
      font-weight: 700;
      margin-bottom: 6px;
      color: #444;
      font-size: 1rem;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }

    .team-test-question-text {
      margin-bottom: 10px;
      font-weight: 500;
      color: red;
      font-size: 19px;
    }

    .team-test-options {
      display: grid;
      grid-template-columns: 1fr;
      gap: 6px;
    }

    @media (min-width: 640px) {
      .team-test-options {
        grid-template-columns: 1fr 1fr;
      }
    }

    .team-test-option-label {
      display: flex;
      align-items: flex-start;
      gap: 8px;
      padding: 6px 8px;
      border-radius: 6px;
      cursor: pointer;
      transition: background 0.15s ease;
      font-size: 0.95rem;
      color: #333;
    }

    .team-test-option-label:hover {
      background: #f3f4ff;
    }

    .team-test-option-label input[type="radio"] {
      margin-top: 2px;
      accent-color: #4f46e5;
      cursor: pointer;
    }

    .team-test-footer {
      text-align: center;
      margin-top: 24px;
    }

    .team-test-button {
      background: #4f46e5;
      color: #ffffff;
      border: none;
      padding: 10px 24px;
      border-radius: 999px;
      font-size: 1rem;
      font-weight: 600;
      cursor: pointer;
      transition: background 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease;
      box-shadow: 0 6px 14px rgba(79,70,229,0.35);
    }

    .team-test-button:hover {
      background: #4338ca;
      transform: translateY(-1px);
      box-shadow: 0 8px 20px rgba(67,56,202,0.4);
    }

    .team-test-button:active {
      transform: translateY(0);
      box-shadow: 0 4px 10px rgba(67,56,202,0.3);
    }

    .team-test-warning {
      margin-top: 30px;
      padding: 10px 12px;
      border-radius: 8px;
      background: #fef2f2;
      color: #b91c1c;
      border: 1px solid #fecaca;
      font-size: 1rem;
      display: none;
    }

    .team-test-result {
      margin-top: 30px;
      padding: 16px 18px;
      border-radius: 12px;
      background: #eef2ff;
      border: 1px solid #c7d2fe;
      display: none;
    }

    .team-test-result-title {
      font-weight: 700;
      margin-bottom: 6px;
      color: #312e81;
      font-size: 1.05rem;
    }

    .team-test-result-text {
      font-size: 0.95rem;
      color: #1f2933;
      line-height: 1.5;
    }
  </style>

  <div class="team-test-header">
    <h2 class="team-test-title">Test de trabajo en equipo</h2>
    <p class="team-test-subtitle">
      Responde honestamente cada pregunta y al final descubre tu perfil de trabajo en equipo.
    </p>
  </div>

  <form id="teamTestForm">
    <!-- Pregunta 1 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 1</div>
      <p class="team-test-question-text">
        1. Cuando un proyecto inicia, lo primero que haces es…
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q1" value="A">
          <span>A. Reunir al equipo para escuchar ideas.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q1" value="B">
          <span>B. Establecer roles y organizar el plan.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q1" value="C">
          <span>C. Analizar los datos y definir objetivos claros.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q1" value="D">
          <span>D. Revisar lo que puedo hacer por mi cuenta antes de avanzar.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 2 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 2</div>
      <p class="team-test-question-text">
        2. Si un compañero comete un error, tu reacción natural es…
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q2" value="A">
          <span>A. Ayudarle a corregirlo sin juzgar.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q2" value="B">
          <span>B. Darle retroalimentación directa para evitar que se repita.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q2" value="C">
          <span>C. Analizar por qué ocurrió y buscar mejoras.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q2" value="D">
          <span>D. Preferir que cada quien sea responsable de lo suyo.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 3 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 3</div>
      <p class="team-test-question-text">
        3. ¿Cómo manejas los conflictos dentro del equipo?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q3" value="A">
          <span>A. Busco mediar y mantener la armonía.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q3" value="B">
          <span>B. Tomo el control para resolver rápido.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q3" value="C">
          <span>C. Escucho ambos lados y propongo una solución basada en hechos.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q3" value="D">
          <span>D. Evito involucrarme si no es necesario.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 4 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 4</div>
      <p class="team-test-question-text">
        4. ¿Qué papel sueles tomar en un proyecto grupal?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q4" value="A">
          <span>A. Motivador y apoyo constante.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q4" value="B">
          <span>B. Líder que guía.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q4" value="C">
          <span>C. Estratega que analiza.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q4" value="D">
          <span>D. Ejecutor que prefiere trabajar solo.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 5 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 5</div>
      <p class="team-test-question-text">
        5. ¿Qué es lo que más valoras en un equipo?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q5" value="A">
          <span>A. La buena comunicación.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q5" value="B">
          <span>B. La claridad en las responsabilidades.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q5" value="C">
          <span>C. La planificación lógica.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q5" value="D">
          <span>D. La libertad para aportar sin presión.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 6 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 6</div>
      <p class="team-test-question-text">
        6. ¿Cómo te sientes al trabajar con personas con estilos muy diferentes al tuyo?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q6" value="A">
          <span>A. Me adapto fácilmente.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q6" value="B">
          <span>B. Puedo dirigirlos sin problema.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q6" value="C">
          <span>C. Me interesa entender cómo piensan.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q6" value="D">
          <span>D. Prefiero mantener mi propia forma de trabajar.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 7 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 7</div>
      <p class="team-test-question-text">
        7. ¿Qué haces cuando un proyecto está estancado?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q7" value="A">
          <span>A. Animo al equipo a colaborar más.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q7" value="B">
          <span>B. Tomo decisiones rápidas para avanzar.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q7" value="C">
          <span>C. Reviso el plan y detecto fallas.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q7" value="D">
          <span>D. Me enfoco en mi parte para no retrasar.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 8 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 8</div>
      <p class="team-test-question-text">
        8. Cuando un compañero propone una idea nueva, tú…
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q8" value="A">
          <span>A. La escucho con entusiasmo.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q8" value="B">
          <span>B. Evalúo si es viable para el plan actual.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q8" value="C">
          <span>C. Pido datos o razones que la respalden.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q8" value="D">
          <span>D. La comparo con lo que yo tenía pensado.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 9 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 9</div>
      <p class="team-test-question-text">
        9. ¿Qué te motiva más dentro de un equipo?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q9" value="A">
          <span>A. Sentir que todos avanzamos juntos.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q9" value="B">
          <span>B. Cumplir metas y liderar resultados.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q9" value="C">
          <span>C. Resolver problemas complejos.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q9" value="D">
          <span>D. Poder trabajar a mi ritmo sin interrupciones.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 10 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 10</div>
      <p class="team-test-question-text">
        10. Si surge una urgencia inesperada, tu primer impulso es…
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q10" value="A">
          <span>A. Ver qué necesita el equipo.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q10" value="B">
          <span>B. Organizar de inmediato las acciones a seguir.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q10" value="C">
          <span>C. Evaluar las soluciones posibles antes de actuar.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q10" value="D">
          <span>D. Resolver lo que me corresponde y dejar el resto al equipo.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 11 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 11</div>
      <p class="team-test-question-text">
        11. ¿Qué tipo de reuniones prefieres?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q11" value="A">
          <span>A. Colaborativas, donde todos aportan.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q11" value="B">
          <span>B. Directas y orientadas a decisiones.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q11" value="C">
          <span>C. Bien estructuradas y con datos.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q11" value="D">
          <span>D. Las mínimas necesarias.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 12 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 12</div>
      <p class="team-test-question-text">
        12. ¿Cómo manejas la retroalimentación?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q12" value="A">
          <span>A. La agradezco, me ayuda a mejorar.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q12" value="B">
          <span>B. La tomo para hacer ajustes rápidos.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q12" value="C">
          <span>C. La analizo detenidamente.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q12" value="D">
          <span>D. Prefiero recibirla solo si es indispensable.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 13 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 13</div>
      <p class="team-test-question-text">
        13. ¿Cómo te sientes al delegar?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q13" value="A">
          <span>A. Cómodo, confío en el equipo.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q13" value="B">
          <span>B. Bien, siempre y cuando supervise el proceso.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q13" value="C">
          <span>C. Delego según habilidades comprobadas.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q13" value="D">
          <span>D. Prefiero hacer las cosas yo mismo.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 14 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 14</div>
      <p class="team-test-question-text">
        14. Cuando el equipo celebra un logro, ¿qué haces?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q14" value="A">
          <span>A. Reconozco el trabajo de todos.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q14" value="B">
          <span>B. Destaco la importancia de continuar con la meta.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q14" value="C">
          <span>C. Analizo qué funcionó bien.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q14" value="D">
          <span>D. Me alegro, pero no me gusta hacer alboroto.</span>
        </label>
      </div>
    </div>

    <!-- Pregunta 15 -->
    <div class="team-test-question">
      <div class="team-test-question-number">Pregunta 15</div>
      <p class="team-test-question-text">
        15. ¿Cómo sueles manejar la presión en proyectos grupales?
      </p>
      <div class="team-test-options">
        <label class="team-test-option-label">
          <input type="radio" name="q15" value="A">
          <span>A. Busco mantener el ánimo del equipo.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q15" value="B">
          <span>B. Asumo el control para evitar caos.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q15" value="C">
          <span>C. Me concentro en encontrar la mejor estrategia.</span>
        </label>
        <label class="team-test-option-label">
          <input type="radio" name="q15" value="D">
          <span>D. Me enfoco en mis tareas sin distraerme.</span>
        </label>
      </div>
    </div>

    <div class="team-test-footer">
      <button type="button" class="team-test-button" id="teamTestSubmit">
        Consultar resultado
      </button>
      <div id="teamTestWarning" class="team-test-warning">
        <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/26a0.png" alt="⚠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Por favor, responde todas las preguntas antes de consultar tu resultado.
      </div>
    </div>
  </form>

  <div id="teamTestResult" class="team-test-result">
    <div class="team-test-result-title" id="teamTestResultTitle"></div>
    <div class="team-test-result-text" id="teamTestResultText"></div>
  </div>

  <script>
    (function () {
      var submitBtn = document.getElementById('teamTestSubmit');
      var warningEl = document.getElementById('teamTestWarning');
      var resultBox = document.getElementById('teamTestResult');
      var resultTitle = document.getElementById('teamTestResultTitle');
      var resultText = document.getElementById('teamTestResultText');

      var resultProfiles = {
        "A": {
          title: "&#x2b50; Perfil A: Colaborativo",
          text: "Eres la persona que mantiene unido al equipo. Te gusta escuchar, apoyar y crear un ambiente donde todos se sientan parte del proyecto. Tu fortaleza está en promover la comunicación y en hacer que cada integrante dé lo mejor de sí. Contigo, el trabajo fluye de forma natural."
        },
        "B": {
          title: "&#x2b50; Perfil B: Líder / Organizador",
          text: "Tienes una mente orientada a la acción. Te gusta tomar el control, ordenar ideas y dirigir al equipo hacia un objetivo claro. Sabes tomar decisiones bajo presión y eres quien mantiene el ritmo del proyecto. Tu presencia impulsa a los demás a avanzar."
        },
        "C": {
          title: "&#x2b50; Perfil C: Analítico / Estratégico",
          text: "Tiendes a ver más allá de lo evidente. Analizas, planificas y detectas errores antes de que aparezcan. En un equipo, eres quien aporta lógica, claridad y estrategias sólidas. Tu modo de pensar ayuda a tomar decisiones más inteligentes y eficientes."
        },
        "D": {
          title: "&#x2b50; Perfil D: Independiente / Autónomo",
          text: "Eres práctico, eficiente y disfrutas trabajar a tu propio ritmo. Cumples tus tareas sin necesidad de supervisión y aportas resultados consistentes. Aunque no necesitas mucha interacción, tu trabajo es clave para que el equipo avance con estabilidad."
        }
      };

      function getSelectedValue(name) {
        var inputs = document.querySelectorAll('input[name="' + name + '"]');
        for (var i = 0; i < inputs.length; i++) {
          if (inputs[i].checked) {
            return inputs[i].value;
          }
        }
        return null;
      }

      function calculateResult() {
        var totalQuestions = 15;
        var answers = [];
        for (var i = 1; i <= totalQuestions; i++) {
          var value = getSelectedValue('q' + i);
          if (!value) {
            return { complete: false };
          }
          answers.push(value);
        }

        var counts = { "A": 0, "B": 0, "C": 0, "D": 0 };
        answers.forEach(function (ans) {
          if (counts.hasOwnProperty(ans)) {
            counts[ans]++;
          }
        });

        var maxLetter = null;
        var maxCount = -1;
        ["A", "B", "C", "D"].forEach(function (letter) {
          if (counts[letter] > maxCount) {
            maxCount = counts[letter];
            maxLetter = letter;
          }
        });

        return {
          complete: true,
          profile: maxLetter,
          counts: counts
        };
      }

      submitBtn.addEventListener('click', function () {
        var result = calculateResult();

        if (!result.complete) {
          warningEl.style.display = 'block';
          resultBox.style.display = 'none';
          return;
        }

        warningEl.style.display = 'none';

        var profile = resultProfiles[result.profile];
        if (profile) {
          resultTitle.textContent = profile.title;
          resultText.textContent = profile.text;
          resultBox.style.display = 'block';
          resultBox.scrollIntoView({ behavior: 'smooth', block: 'start' });
        }
      });
    })();
  </script>
</div>


<div class="su-box su-box-style-default" id="" style="border-color:#cc0000;border-radius:6px;max-width:none"><div class="su-box-title" style="background-color:#ff0607;color:#FFFFFF;border-top-left-radius:4px;border-top-right-radius:4px"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2b07.png" alt="⬇" class="wp-smiley" style="height: 1em; max-height: 1em;" /> CURSOS RECOMENDADOS <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2b07.png" alt="⬇" class="wp-smiley" style="height: 1em; max-height: 1em;" /></div><div class="su-box-content su-u-clearfix su-u-trim" style="border-bottom-left-radius:4px;border-bottom-right-radius:4px">
<h2 class="wp-block-heading">Cursos recomendados</h2>



<ul class="wp-block-list">
<li><a href="https://cursosgratisunam.com/negocios/motivando-equipos-de-trabajo/" data-wpel-link="internal">Motivando Equipos de Trabajo</a></li>



<li><a href="https://cursosgratisunam.com/administracion/liderazgo-de-equipos-remotos/" data-wpel-link="internal">Curso sobre liderazgo de equipos remotos</a></li>



<li><a href="https://cursosgratisunam.com/negocios/evaluacion-del-rendimiento-de-equipos/" data-wpel-link="internal">Curso sobre evaluación del rendimiento de equipos</a></li>



<li><a href="https://cursosgratisunam.com/desarrollo-personal/delegacion-de-tareas/" data-wpel-link="internal">Curso sobre delegación de tareas</a></li>



<li><a href="https://cursosgratisunam.com/educacion/competencias-empleabilidad/" data-wpel-link="internal">Competencias para la empleabilidad</a></li>



<li><a href="https://cursosgratisunam.com/negocios/gestion-organizaciones-efectivas/" data-wpel-link="internal">Gestión de organizaciones efectivas</a></li>



<li><a href="https://cursosgratisunam.com/negocios/claves-gestionar-personas/" data-wpel-link="internal">Claves para Gestionar Personas</a></li>



<li><a href="https://cursosgratisunam.com/administracion/autoridad-direccion-y-liderazgo/" data-wpel-link="internal">Autoridad, dirección y liderazgo</a></li>



<li><a href="https://cursosgratisunam.com/administracion/gestion/" data-wpel-link="internal">Gestión del talento humano</a></li>



<li><a href="https://cursosgratisunam.com/desarrollo-personal/feedback/" data-wpel-link="internal">Curso de retroalimentación para líderes de equipos</a></li>
</ul>



<p class="wp-block-paragraph"></div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/blog/test-de-trabajo-en-equipo/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Curso de diseño arquitectónico</title>
		<link>https://cursosgratisunam.com/arquitectura/diseno-arquitectonico/</link>
					<comments>https://cursosgratisunam.com/arquitectura/diseno-arquitectonico/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Fri, 14 Nov 2025 23:11:27 +0000</pubDate>
				<category><![CDATA[Cursos de arquitectura gratis]]></category>
		<category><![CDATA[Cursos de construcción gratis]]></category>
		<category><![CDATA[Cursos de Ingeniería gratis]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12290</guid>

					<description><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/11/curso-diseno-arquitectonico.webp" class="attachment-large size-large wp-post-image" alt="Curso gratis de diseño arquitectónico" decoding="async" loading="lazy" /></div>El diseño arquitectónico reúne decisiones técnicas y creativas que dan forma a espacios funcionales y bien&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/11/curso-diseno-arquitectonico.webp" class="attachment-large size-large wp-post-image" alt="Curso gratis de diseño arquitectónico" decoding="async" loading="lazy" /></div>
<p class="has-text-align-center wp-block-paragraph">El diseño arquitectónico reúne decisiones técnicas y creativas que dan forma a espacios funcionales y bien organizados, combinando necesidades reales con soluciones claras y viables. <strong>Comprender este proceso permite identificar qué elementos hacen que un proyecto sea coherente y responda adecuadamente a su contexto.</strong></p>



<p class="has-text-align-center wp-block-paragraph">También implica analizar el sitio, reconocer los límites y oportunidades de cada terreno y transformar los requerimientos del usuario en un esquema capaz de evolucionar hacia una propuesta sólida. <strong>Cada etapa aporta información esencial que guía el avance del proyecto hasta su versión final.</strong></p>



<p class="has-text-align-center wp-block-paragraph">Este curso presenta una ruta completa para aprender cómo se construye un proyecto arquitectónico desde la idea inicial hasta su presentación, mostrando cada fase de manera sencilla, ordenada y práctica.</p>



<h2 class="wp-block-heading has-text-align-center">¿Qué aprenderás en el curso?</h2>



<p class="has-text-align-center wp-block-paragraph">En este curso aprenderás <strong>a comprender cómo se estructura un proyecto arquitectónico desde sus primeras ideas hasta su versión final</strong>, reuniendo la información necesaria para dar sentido a cada decisión de diseño. Conocerás cómo se identifican las necesidades reales de un usuario y cómo se convierten en lineamientos que orientan el desarrollo completo del proyecto.</p>



<p class="has-text-align-center wp-block-paragraph">También aprenderás <strong>a analizar el entorno en el que se construirá la propuesta</strong>, revisando factores físicos, normativos y económicos que influyen directamente en lo que puede o no puede hacerse en un terreno. Esta etapa te permitirá entender cómo el contexto condiciona y, al mismo tiempo, ofrece oportunidades valiosas para el diseño.</p>



<p class="has-text-align-center wp-block-paragraph">Además, descubrirás <strong>cómo se crea un concepto arquitectónico claro</strong>, desarrollando ideas rectoras, esquemas iniciales y modelos preliminares que ayudan a visualizar la organización del espacio. Verás cómo estos elementos guían el rumbo del proyecto y permiten refinarlo antes de pasar a su desarrollo técnico.</p>



<p class="has-text-align-center wp-block-paragraph">El curso también te enseñará <strong>a elaborar documentación profesional</strong>, desde planos y diagramas hasta modelos digitales y especificaciones básicas. Conocerás las convenciones gráficas más utilizadas y entenderás cómo se presenta un proyecto para que sea legible, ordenado y comprensible.</p>



<p class="has-text-align-center wp-block-paragraph">Finalmente, aprenderás <strong>a comunicar tu propuesta con claridad</strong>, creando presentaciones visuales, preparando discursos y organizando láminas que expliquen la lógica del proyecto sin complicaciones, lo que facilitará defender tus ideas ante clientes, docentes o evaluadores.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Lo que aprenderás en el curso:</strong></p>



<ul class="wp-block-list">
<li>Identificar las etapas esenciales del proceso de diseño arquitectónico.</li>



<li>Transformar necesidades iniciales en requisitos espaciales bien definidos.</li>



<li>Realizar análisis del sitio considerando factores físicos y contextuales.</li>



<li>Evaluar la viabilidad legal, técnica y económica de un proyecto.</li>



<li>Construir una idea rectora y desarrollar conceptos arquitectónicos sólidos.</li>



<li>Crear esquemas, bocetos y modelos preliminares para visualizar soluciones.</li>



<li>Elaborar planos y documentación gráfica utilizando criterios profesionales.</li>



<li>Aplicar herramientas digitales y principios básicos de modelado para representar el proyecto.</li>



<li>Seleccionar materiales y revisar normas que influyen en el diseño y la ejecución.</li>



<li>Preparar presentaciones claras y estructuradas para comunicar el proyecto de forma profesional.</li>
</ul>



<p class="has-text-align-center wp-block-paragraph">Al finalizar el curso, <strong>tendrás claro cómo transformar una idea en un proyecto arquitectónico completo</strong>, sabrás analizar el contexto, desarrollar un concepto sólido, representar tus propuestas con técnicas profesionales y comunicar tu diseño de forma clara y convincente.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/tecnologia/autocad/" data-wpel-link="internal">Curso de AutoCAD gratis</a></p>



<h2 class="wp-block-heading has-text-align-center">¿A quién está dirigido el curso?</h2>



<p class="has-text-align-center wp-block-paragraph">Este curso está dirigido principalmente a <strong>personas que desean fortalecer sus habilidades en el desarrollo de proyectos arquitectónicos</strong>, ya sea porque están iniciando en el área o porque buscan una guía clara para entender el proceso completo de diseño.</p>



<p class="has-text-align-center wp-block-paragraph">También resulta útil para <strong>estudiantes y técnicos que participan en tareas relacionadas con la construcción o el dibujo arquitectónico</strong>, y que necesitan comprender cómo se analizan las necesidades del usuario, cómo se generan conceptos y cómo se organiza la información de un proyecto.</p>



<p class="has-text-align-center wp-block-paragraph">Asimismo, es una excelente opción para <strong>quienes trabajan en entornos donde se requiere interpretar planos, evaluar terrenos o comunicar ideas de forma profesional</strong>, ya que el curso ofrece bases sólidas que permiten integrar todas estas habilidades de manera práctica y accesible.</p>



<div class="wp-block-columns bloque2 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="detalles-del-curso">Detalles del curso</h2>



<ul class="wp-block-list">
<li><strong>Nombre del curso</strong>: <em>Curso de diseño arquitectónico</em></li>



<li><strong>Duración:</strong> <em>10 horas aproximadamente</em></li>



<li><strong>Plataforma:</strong> <em><a href="https://edutin.com/shared_link-6484" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external">Edutin Academy</a></em></li>



<li><strong>Categoría:</strong> <a href="https://cursosgratisunam.com/arquitectura/" data-wpel-link="internal"><em>Arquitectura</em></a></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="300" height="450" loading="lazy" src="https://cursosgratisunam.com/wp-content/uploads/2025/11/diseno-arquitectonico-curso.webp" alt="Diseño arquitectonico curso" class="wp-image-12291"/></figure>
</div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="temario-del-curso">Temario del curso</h2>



<ul class="wp-block-list">
<li><strong>Módulo 1: </strong>Introducción al brief y levantamiento de requerimientos</li>



<li><strong>Módulo 2: </strong>Introducción al análisis del sitio y factibilidad</li>



<li><strong>Módulo 3: </strong>Introducción al diseño conceptual y esquemático</li>



<li><strong>Módulo 4: </strong>Introducción al desarrollo del proyecto y documentación técnica</li>



<li><strong>Módulo 5: </strong>Introducción a la comunicación y presentación final del proyecto arquitectónico</li>
</ul>


<div style="text-align: center; margin-bottom: 20px;">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9224474948885584"
     crossorigin="anonymous"></script>
<!-- Unam antes botón -->
<ins class="adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-9224474948885584"
     data-ad-slot="8070154997"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<div style="text-align: center; margin-bottom: 20px;">
  Puedes ingresar al curso aquí abajo: 
</div>


<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-75 is-style-outline , boton-cursos is-style-outline--2"><a class="wp-block-button__link has-black-color has-white-background-color has-text-color has-background has-custom-font-size wp-element-button" href="https://edutin.com/sh-11196" style="border-radius:5px;font-size:28px" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external">IR AL CURSO</a></div>
</div>
</div>
</div>



<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-100 is-style-outline is-style-outline--3"><a class="wp-block-button__link has-black-color has-luminous-vivid-amber-background-color has-text-color has-background wp-element-button" href="https://cursosgratisunam.com/#1-todos-los-cursos-en-l%C3%ADnea-gratis" style="border-radius:10px" data-wpel-link="internal"><strong>VER TODOS LOS CURSOS GRATUITOS</strong></a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/arquitectura/diseno-arquitectonico/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Curso de limpieza ecológica y sostenible</title>
		<link>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/limpieza-ecologica-y-sostenible/</link>
					<comments>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/limpieza-ecologica-y-sostenible/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Fri, 13 Jun 2025 19:04:08 +0000</pubDate>
				<category><![CDATA[Cursos de Sostenibilidad y Medio Ambiente gratis]]></category>
		<category><![CDATA[Cursos de Ecología gratis]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12259</guid>

					<description><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/06/curso-limpieza-ecologica-y-sostenible.webp" class="attachment-large size-large wp-post-image" alt="curso gratis limpieza ecologica y sostenible" decoding="async" loading="lazy" /></div>Mantener limpio un espacio no debería significar llenar el ambiente de químicos agresivos. Hoy en día,&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/06/curso-limpieza-ecologica-y-sostenible.webp" class="attachment-large size-large wp-post-image" alt="curso gratis limpieza ecologica y sostenible" decoding="async" loading="lazy" /></div>
<p class="has-text-align-center wp-block-paragraph">Mantener limpio un espacio no debería significar llenar el ambiente de químicos agresivos. Hoy en día, existen formas más responsables de hacerlo, que además de ser efectivas, son más seguras para la salud y para el planeta. La limpieza puede ser profunda sin dejar residuos tóxicos ni contaminar el agua.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>La limpieza ecológica</strong> propone sustituir productos industriales por ingredientes naturales, aprovechar mejor los recursos y usar herramientas duraderas en lugar de desechables. Con pequeños cambios, es posible transformar por completo la manera en que se realiza el aseo diario, reduciendo costos y desperdicios.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso</strong> enseña cómo adoptar esas prácticas sostenibles de forma sencilla y práctica, explicando desde lo más básico hasta lo necesario para aplicar una rutina de limpieza respetuosa con el entorno.</p>



<h2 class="wp-block-heading has-text-align-center">¿Qué aprenderás en el curso?</h2>



<p class="has-text-align-center wp-block-paragraph"><strong>En este curso aprenderás a limpiar de forma responsable sin llenar tus espacios de químicos innecesarios</strong>. Conocerás qué es la limpieza ecológica, por qué es importante y cómo aplicarla en tu vida diaria sin complicaciones ni gastos extra.</p>



<p class="has-text-align-center wp-block-paragraph">Descubrirás <strong>cuáles son los materiales más adecuados</strong> para limpiar sin contaminar, desde paños reutilizables hasta fibras vegetales. Aprenderás a elegir los utensilios correctos para lograr buenos resultados sin dañar el entorno.</p>



<p class="has-text-align-center wp-block-paragraph">También sabrás <strong>qué productos naturales pueden reemplazar a los industriales</strong>, como el vinagre blanco o el bicarbonato de sodio. No se trata solo de usarlos, sino de entender cómo actúan y cuándo usarlos con mayor eficacia.</p>



<p class="has-text-align-center wp-block-paragraph">Se explicará el uso de <strong>químicos verdes</strong>, es decir, opciones más seguras y menos agresivas que cumplen su función sin afectar la salud ni el ambiente. Sabrás cómo reconocerlos, utilizarlos y almacenarlos correctamente.</p>



<p class="has-text-align-center wp-block-paragraph">Y para que todo esto funcione mejor, aprenderás a <strong>ahorrar recursos</strong> mientras limpias. Agua, energía y materiales se pueden aprovechar mucho más si sabes cómo hacerlo sin complicarte.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/ecologia/compostaje-organico/" data-wpel-link="internal">Curso de compostaje orgánico en casa</a></p>



<p class="has-text-align-center wp-block-paragraph"><strong>Lo que aprenderás en el curso:</strong></p>



<ul class="wp-block-list">
<li>Comprenderás qué implica la limpieza ecológica y por qué es importante.</li>



<li>Identificarás las diferencias entre los productos tradicionales y los productos sustentables.</li>



<li>Conocerás los principios básicos de la limpieza responsable.</li>



<li>Aprenderás a elegir los utensilios adecuados para una limpieza eficiente y amigable con el medio ambiente.</li>



<li>Sabrás cómo funciona la microfibra y por qué es una gran aliada para el aseo ecológico.</li>



<li>Descubrirás cómo usar utensilios fabricados con materiales como rayón y viscosa.</li>



<li>Te familiarizarás con productos químicos verdes y cómo utilizarlos de forma segura.</li>



<li>Aprenderás a sacar provecho a ingredientes naturales como el bicarbonato y el vinagre.</li>



<li>Conocerás técnicas para ahorrar agua, electricidad y otros recursos mientras limpias.</li>



<li>Desarrollarás hábitos que te permitirán mantener espacios limpios y saludables de manera constante.</li>
</ul>



<p class="has-text-align-center wp-block-paragraph">Al finalizar el curso, serás capaz de aplicar <strong>estrategias prácticas y sustentables</strong> para limpiar tu hogar, lugar de trabajo o cualquier otro espacio. También sabrás reconocer productos ecológicos en el mercado, fabricar tus propios limpiadores naturales y reducir tu huella ambiental sin comprometer la higiene.</p>



<h2 class="wp-block-heading has-text-align-center">¿A quién está dirigido el curso?</h2>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso está pensado para personas que quieren limpiar sin contaminar</strong>, ya sea en casa, en el trabajo o en cualquier espacio donde la higiene es importante, pero también lo es cuidar el entorno. Si te interesa cambiar productos agresivos por opciones más naturales, aquí encontrarás cómo hacerlo sin complicaciones.</p>



<p class="has-text-align-center wp-block-paragraph">También es ideal para <strong>quienes se dedican profesionalmente a la limpieza</strong> y buscan actualizar sus conocimientos con prácticas más sostenibles. Ya sea que trabajes en oficinas, escuelas, centros de salud o viviendas, aprender a usar recursos ecológicos puede marcar una gran diferencia en tu labor diaria.</p>



<p class="has-text-align-center wp-block-paragraph">Si simplemente te interesa <strong>reducir tu impacto ambiental desde lo cotidiano</strong>, este curso es una excelente manera de empezar.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/sostenibilidad-medio-ambiente/reciclaje/" data-wpel-link="internal">Curso de reciclaje</a></p>



<div class="wp-block-columns bloque2 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="detalles-del-curso">Detalles del curso</h2>



<ul class="wp-block-list">
<li><strong>Nombre del curso</strong>: <em>Limpieza Verde</em></li>



<li><strong>Duración:</strong> <em>20 horas aproximadamente</em></li>



<li><strong>Plataforma:</strong><em> ICAT (Instituto de Capacitación para el Trabajo)</em></li>



<li><strong>Categoría:</strong> <a href="https://cursosgratisunam.com/sostenibilidad-medio-ambiente/" data-wpel-link="internal"><em>Sostenibilidad y Medio Ambiente</em></a> / <a href="https://cursosgratisunam.com/ecologia/" data-wpel-link="internal"><em>Ecología</em></a></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="300" height="450" loading="lazy" src="https://cursosgratisunam.com/wp-content/uploads/2025/06/limpieza-ecologica-y-sostenible-curso.webp" alt="limpieza ecologica y sostenible curso gratis" class="wp-image-12260"/></figure>
</div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="temario-del-curso">Temario del curso</h2>



<ul class="wp-block-list">
<li><strong>Módulo 1: </strong>Limpieza verde y sustentable
<ul class="wp-block-list">
<li>Conceptos relacionados con la limpieza verde</li>



<li>¿Qué es la limpieza verde?</li>



<li>Elementos que intervienen en la limpieza verde</li>
</ul>
</li>



<li><strong>Módulo 2: </strong>Recursos para la limpieza verde
<ul class="wp-block-list">
<li>El uso de la microfibra</li>



<li>Utensilios a base de rayón y viscosa</li>



<li>Uso de productos químicos verdes</li>
</ul>
</li>



<li><strong>Módulo 3: </strong>Productos naturales para la limpieza
<ul class="wp-block-list">
<li>Bicarbonato de sodio</li>



<li>Vinagre blanco</li>



<li>Ahorro de recursos</li>
</ul>
</li>
</ul>


<div style="text-align: center; margin-bottom: 20px;">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9224474948885584"
     crossorigin="anonymous"></script>
<!-- Unam antes botón -->
<ins class="adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-9224474948885584"
     data-ad-slot="8070154997"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<div style="text-align: center; margin-bottom: 20px;">
  Puedes ingresar al curso aquí abajo: 
</div>


<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-75 is-style-outline , boton-cursos is-style-outline--4"><a class="wp-block-button__link has-black-color has-white-background-color has-text-color has-background has-custom-font-size wp-element-button" href="https://icatadistancia.cdmx.gob.mx/enrol/index.php?id=15" style="border-radius:5px;font-size:28px" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external">IR AL CURSO</a></div>
</div>
</div>
</div>



<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-100 is-style-outline is-style-outline--5"><a class="wp-block-button__link has-black-color has-luminous-vivid-amber-background-color has-text-color has-background wp-element-button" href="https://cursosgratisunam.com/#1-todos-los-cursos-en-l%C3%ADnea-gratis" style="border-radius:10px" data-wpel-link="internal"><strong>VER TODOS LOS CURSOS GRATUITOS</strong></a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/limpieza-ecologica-y-sostenible/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Curso de escalabilidad y seguridad de aplicaciones</title>
		<link>https://cursosgratisunam.com/desarrollo-web/escalabilidad-y-seguridad-de-aplicaciones/</link>
					<comments>https://cursosgratisunam.com/desarrollo-web/escalabilidad-y-seguridad-de-aplicaciones/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Sat, 07 Jun 2025 18:09:10 +0000</pubDate>
				<category><![CDATA[Cursos de desarrollo web gratis]]></category>
		<category><![CDATA[Cursos de Programación gratis]]></category>
		<category><![CDATA[Edutin Academy]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12245</guid>

					<description><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/06/curso-escalabilidad-y-seguridad-de-aplicaciones.webp" class="attachment-large size-large wp-post-image" alt="curso gratis escalabilidad y seguridad de aplicaciones" decoding="async" loading="lazy" /></div>Cuando una aplicación empieza a tener más usuarios, el verdadero reto no es sumar visitas, sino&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/06/curso-escalabilidad-y-seguridad-de-aplicaciones.webp" class="attachment-large size-large wp-post-image" alt="curso gratis escalabilidad y seguridad de aplicaciones" decoding="async" loading="lazy" /></div>
<p class="has-text-align-center wp-block-paragraph">Cuando una aplicación empieza a tener más usuarios, el verdadero reto no es sumar visitas, sino <strong>mantenerla rápida, estable y funcional</strong>, incluso bajo presión. Si no está bien preparada para crecer, puede colapsar justo en el momento más importante.</p>



<p class="has-text-align-center wp-block-paragraph">A esto se suma otro frente igual de importante: la <strong>seguridad digital</strong>. Cada línea de código puede ser una puerta de entrada si no se desarrolla con cuidado. Proteger los datos y evitar ataques ya no es solo tarea de los expertos en ciberseguridad, es parte del trabajo de cualquier desarrollador.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso ofrece una guía práctica y clara para aprender a escalar aplicaciones y protegerlas desde su estructura.</strong> Ideal para quienes desean mejorar el rendimiento y blindar sus sistemas sin complicarse con explicaciones innecesarias.</p>



<h2 class="wp-block-heading has-text-align-center">¿Qué aprenderás en el curso?</h2>



<p class="has-text-align-center wp-block-paragraph"><strong>En este curso aprenderás a construir aplicaciones preparadas para crecer sin colapsar</strong>, entendiendo cómo manejar grandes volúmenes de usuarios sin perder velocidad ni estabilidad. Desde el inicio, se explican conceptos que te permitirán tomar mejores decisiones al momento de diseñar o mejorar una aplicación.</p>



<p class="has-text-align-center wp-block-paragraph">Descubrirás cómo <strong>distribuir correctamente la carga de trabajo entre distintos servidores</strong>, una estrategia fundamental cuando el tráfico comienza a aumentar. Junto con ello, aprenderás a implementar mecanismos de <strong>autoscaling</strong>, para que tus sistemas se ajusten solos al número de usuarios conectados, sin intervención manual.</p>



<p class="has-text-align-center wp-block-paragraph">También entenderás cómo <strong>optimizar el rendimiento de bases de datos</strong> y cómo aprovechar el uso de la caché para acelerar las respuestas de tu aplicación. Son herramientas esenciales para evitar cuellos de botella cuando los datos crecen junto con la demanda.</p>



<p class="has-text-align-center wp-block-paragraph">La segunda parte del curso se enfoca en la protección. Aprenderás a <strong>detectar errores comunes que abren puertas a los atacantes</strong>, así como a aplicar medidas efectivas para proteger los datos que manejan tus sistemas, tanto en desarrollo como en producción.</p>



<p class="has-text-align-center wp-block-paragraph">Para finalizar, se abordan <strong>estrategias prácticas para mantener tus aplicaciones seguras en todo momento</strong>, desde la configuración del entorno hasta el uso de herramientas que alertan sobre comportamientos sospechosos o posibles vulnerabilidades.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Lo que aprenderás en el curso:</strong></p>



<ul class="wp-block-list">
<li>Comprender cómo funciona la escalabilidad en aplicaciones modernas.</li>



<li>Aplicar técnicas de balanceo de carga para distribuir el tráfico.</li>



<li>Configurar autoscaling para ajustar el rendimiento automáticamente.</li>



<li>Mejorar el acceso a bases de datos con particionamiento y caché.</li>



<li>Identificar fallos que pueden comprometer la seguridad de una aplicación.</li>



<li>Implementar prácticas para proteger datos sensibles.</li>



<li>Prevenir ataques como inyecciones, exposiciones y accesos no autorizados.</li>



<li>Usar herramientas de análisis para monitorear posibles amenazas.</li>



<li>Configurar entornos de desarrollo y producción con medidas de seguridad sólidas.</li>



<li>Diseñar sistemas resilientes, preparados para crecer y protegerse al mismo tiempo.</li>
</ul>



<p class="has-text-align-center wp-block-paragraph">Al finalizar el curso, <strong>habrás adquirido las habilidades necesarias para desarrollar aplicaciones más robustas</strong>, que no solo se adaptan al crecimiento, sino que también se mantienen firmes frente a posibles riesgos digitales.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/tecnologia/ciberseguridad/" data-wpel-link="internal">Curso de ciberseguridad gratis</a></p>



<h2 class="wp-block-heading has-text-align-center">¿A quién está dirigido el curso?</h2>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso está pensado para personas que desarrollan aplicaciones web y quieren llevarlas al siguiente nivel.</strong> Si ya tienes experiencia creando sistemas funcionales, pero te preocupa cómo responderán ante una gran cantidad de usuarios o cómo resistirán un intento de ataque, este curso es para ti.</p>



<p class="has-text-align-center wp-block-paragraph">También es ideal para <strong>quienes diseñan arquitecturas de software</strong> y necesitan soluciones que combinen rendimiento y seguridad. Si trabajas en proyectos donde la estabilidad y la protección de los datos no se pueden dejar al azar, este contenido te resultará especialmente útil.</p>



<p class="has-text-align-center wp-block-paragraph">Por último, es ideal para <strong>emprendedores tecnológicos, profesionales de startups o integrantes de equipos en crecimiento, ya </strong>que se beneficiarán al aprender cómo preparar sus aplicaciones para escalar con confianza, sin poner en riesgo la experiencia del usuario ni la integridad de la información.</p>



<div class="wp-block-columns bloque2 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="detalles-del-curso">Detalles del curso</h2>



<ul class="wp-block-list">
<li><strong>Nombre del curso</strong>: <em>Curso de escalabilidad y seguridad de aplicaciones</em></li>



<li><strong>Duración:</strong> <em>4 horas aproximadamente</em></li>



<li><strong>Plataforma:</strong> <a href="https://edutin.com/sh-6484" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external"><em>Edutin Academy</em></a></li>



<li><strong>Categoría:</strong> <a href="https://cursosgratisunam.com/desarrollo-web/" data-wpel-link="internal"><em>Desarrollo web</em></a> / <a href="https://cursosgratisunam.com/programacion/" data-wpel-link="internal"><em>Programación</em></a></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="300" height="450" loading="lazy" src="https://cursosgratisunam.com/wp-content/uploads/2025/06/escalabilidad-y-seguridad-de-aplicaciones-curso.webp" alt="escalabilidad y seguridad de aplicaciones curso gratis" class="wp-image-12246"/></figure>
</div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="temario-del-curso">Temario del curso</h2>



<ul class="wp-block-list">
<li><strong>Módulo 1: </strong>Escalabilidad de aplicaciones web
<ul class="wp-block-list">
<li>Introducción al curso</li>



<li>Introducción a la escalabilidad y seguridad</li>



<li>Balanceo de carga y autoscaling</li>



<li>Escalado de bases de datos y caching</li>
</ul>
</li>



<li><strong>Módulo 2: </strong>Seguridad en aplicaciones web y buenas prácticas
<ul class="wp-block-list">
<li>Seguridad en aplicaciones web</li>



<li>Protección contra vulnerabilidades comunes</li>



<li>Continuación de la seguridad y conclusión del curso</li>



<li>Conclusión</li>
</ul>
</li>
</ul>


<div style="text-align: center; margin-bottom: 20px;">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9224474948885584"
     crossorigin="anonymous"></script>
<!-- Unam antes botón -->
<ins class="adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-9224474948885584"
     data-ad-slot="8070154997"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<div style="text-align: center; margin-bottom: 20px;">
  Puedes ingresar al curso aquí abajo: 
</div>


<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-75 is-style-outline , boton-cursos is-style-outline--6"><a class="wp-block-button__link has-black-color has-white-background-color has-text-color has-background has-custom-font-size wp-element-button" href="https://edutin.com/curso-de-escalabilidad-y-seguridad-de-aplicaciones" style="border-radius:5px;font-size:28px" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external">IR AL CURSO</a></div>
</div>
</div>
</div>



<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-100 is-style-outline is-style-outline--7"><a class="wp-block-button__link has-black-color has-luminous-vivid-amber-background-color has-text-color has-background wp-element-button" href="https://cursosgratisunam.com/#1-todos-los-cursos-en-l%C3%ADnea-gratis" style="border-radius:10px" data-wpel-link="internal"><strong>VER TODOS LOS CURSOS GRATUITOS</strong></a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/desarrollo-web/escalabilidad-y-seguridad-de-aplicaciones/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Curso sobre fundamentos bioquímicos de la vida</title>
		<link>https://cursosgratisunam.com/biologia/fundamentos-bioquimicos-de-la-vida/</link>
					<comments>https://cursosgratisunam.com/biologia/fundamentos-bioquimicos-de-la-vida/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Sat, 31 May 2025 23:20:52 +0000</pubDate>
				<category><![CDATA[Cursos de biología gratis]]></category>
		<category><![CDATA[edx]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12219</guid>

					<description><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/curso-fundamentos-bioquimicos-de-la-vida.webp" class="attachment-large size-large wp-post-image" alt="curso gratis fundamentos bioquimicos de la vida" decoding="async" loading="lazy" /></div>La vida no apareció por arte de magia. Surgió a partir de combinaciones precisas entre partículas,&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/curso-fundamentos-bioquimicos-de-la-vida.webp" class="attachment-large size-large wp-post-image" alt="curso gratis fundamentos bioquimicos de la vida" decoding="async" loading="lazy" /></div>
<p class="has-text-align-center wp-block-paragraph">La vida no apareció por arte de magia. Surgió a partir de combinaciones precisas entre partículas, átomos y fuerzas físicas que, con el tiempo, dieron forma a estructuras complejas capaces de reproducirse, nutrirse y evolucionar. Todo lo que somos se reduce, en esencia, a química y física trabajando en perfecta coordinación.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Detrás de cada célula, órgano o función vital, hay una base molecular que lo sostiene todo.</strong> Elementos como el carbono, el oxígeno o el nitrógeno, y moléculas como el agua o las proteínas, no solo están presentes en nuestro cuerpo, sino que son imprescindibles para que podamos existir.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso explora esa conexión entre ciencia y vida</strong>, abordando temas esenciales como los elementos presentes en los seres vivos, sus funciones, y las biomoléculas que participan en casi todo lo que hace un organismo. Ideal para quienes quieren entender el lado científico de lo que somos, sin complicaciones.</p>



<h2 class="wp-block-heading has-text-align-center">¿Qué aprenderás en el curso?</h2>



<p class="has-text-align-center wp-block-paragraph">En este curso aprenderás <strong>cómo la química y la física permiten que la vida exista</strong>. Descubrirás cuáles son los elementos esenciales presentes en los seres vivos, qué papel desempeñan y por qué son tan importantes.</p>



<p class="has-text-align-center wp-block-paragraph">Explorarás <strong>moléculas simples pero imprescindibles</strong>, como el agua y ciertos gases, que posibilitan la existencia de organismos vivos. Comprenderás cómo estas pequeñas sustancias sostienen todo tipo de funciones vitales.</p>



<p class="has-text-align-center wp-block-paragraph">También conocerás las famosas <strong>biomoléculas</strong>: carbohidratos, lípidos, proteínas y ácidos nucleicos. Sabrás exactamente cómo están formadas y qué tareas cumplen dentro del organismo, desde aportar energía hasta almacenar información genética.</p>



<p class="has-text-align-center wp-block-paragraph">Podrás entender cómo estas biomoléculas colaboran entre sí, formando <strong>estructuras más complejas como células y tejidos</strong>, fundamentales para cualquier forma de vida.</p>



<p class="has-text-align-center wp-block-paragraph">Por último, tendrás una visión completa de cómo todos estos componentes interactúan para mantener en funcionamiento al organismo, proporcionándote una base sólida para estudios posteriores en biología y bioquímica.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/quimica/bioquimica/" data-wpel-link="internal">Curso de bioquímica gratis</a></p>



<p class="has-text-align-center wp-block-paragraph"><strong>Lo que aprenderás en el curso:</strong></p>



<ol class="wp-block-list">
<li>Cuáles son los elementos fundamentales de los seres vivos.</li>



<li>Qué funciones cumplen los elementos principales y secundarios.</li>



<li>Cómo se organizan los elementos en moléculas esenciales para vivir.</li>



<li>Condiciones básicas que necesitan los organismos para existir.</li>



<li>Qué son los carbohidratos y cómo los utiliza tu cuerpo.</li>



<li>Importancia y funciones principales de los lípidos.</li>



<li>Cómo trabajan el ADN y ARN para almacenar información.</li>



<li>De qué forma se crean y usan las proteínas en el cuerpo.</li>



<li>Qué hacen exactamente las enzimas en tu organismo.</li>



<li>Cómo todos estos elementos y moléculas permiten la existencia de vida.</li>
</ol>



<p class="has-text-align-center wp-block-paragraph">Al finalizar el curso, <strong>tendrás una idea completa de cómo se organiza la vida a nivel molecular</strong>, y estarás preparado para entender temas más avanzados en biología, fisiología o bioquímica sin perderte en tecnicismos.</p>



<h2 class="wp-block-heading has-text-align-center">¿A quién está dirigido el curso?</h2>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso está pensado para personas curiosas</strong> que siempre se han preguntado cómo funciona la vida más allá de lo que se ve a simple vista. Si alguna vez te has detenido a pensar qué hay detrás de una célula o por qué ciertos elementos son vitales para el cuerpo, en este curso encontrarás respuestas claras y bien explicadas.</p>



<p class="has-text-align-center wp-block-paragraph">También es ideal para <strong>estudiantes de preparatoria o primeros semestres de universidad</strong> que necesiten reforzar sus bases científicas. Ayuda a entender conceptos que aparecen constantemente en materias como biología, química o fisiología, pero que muchas veces no se explican desde lo más esencial.</p>



<p class="has-text-align-center wp-block-paragraph">Si eres <strong>docente, divulgador o simplemente te interesa aprender cosas nuevas</strong>, este curso te servirá para actualizarte y entender los fundamentos que explican por qué estamos hechos como estamos.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/biologia/biologia-celular/" data-wpel-link="internal">Curso de biología celular gratis</a></p>



<div class="wp-block-columns bloque2 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="detalles-del-curso">Detalles del curso</h2>



<ul class="wp-block-list">
<li><strong>Nombre del curso</strong>: <em>Fundamentos bioquímicos de la vida</em></li>



<li><strong>Duración:</strong><em> 32 horas aproximadamente</em></li>



<li><strong>Institución:</strong> <a href="https://edx.sjv.io/7adEY3" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><em>Universidad Politécnica de Valencia</em></a> </li>



<li><strong>Plataforma:</strong> <a href="https://edx.sjv.io/o40r6b" target="_blank" rel="noopener nofollow external noreferrer" data-wpel-link="external"><em>edX</em></a></li>



<li><strong>Categoría:</strong> <a href="https://cursosgratisunam.com/biologia/" data-wpel-link="internal"><em>Biología</em></a></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="300" height="450" loading="lazy" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/fundamentos-bioquimicos-de-la-vida-curso.webp" alt="fundamentos bioquimicos de la vida curso gratis" class="wp-image-12220"/></figure>
</div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="temario-del-curso">Temario del curso</h2>



<ul class="wp-block-list">
<li><strong>Módulo 1: </strong>Elementos y vida</li>



<li><strong>Módulo 2: </strong>Elementos menores</li>



<li><strong>Módulo 3: </strong>Moléculas y vida</li>



<li><strong>Módulo 4: </strong>Requerimientos para la vida</li>



<li><strong>Módulo 5: </strong>Carbohidratos</li>



<li><strong>Módulo 6: </strong>Lípidos</li>



<li><strong>Módulo 7: </strong>Ácidos nucleicos</li>



<li><strong>Módulo 8: </strong>Proteínas</li>
</ul>


<div style="text-align: center; margin-bottom: 20px;">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9224474948885584"
     crossorigin="anonymous"></script>
<!-- Unam antes botón -->
<ins class="adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-9224474948885584"
     data-ad-slot="8070154997"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<div style="text-align: center; margin-bottom: 20px;">
  Puedes ingresar al curso aquí abajo: 
</div>


<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-75 is-style-outline , boton-cursos is-style-outline--8"><a class="wp-block-button__link has-black-color has-white-background-color has-text-color has-background has-custom-font-size wp-element-button" href="https://edx.sjv.io/o4bRn9" style="border-radius:5px;font-size:28px" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external">IR AL CURSO</a></div>
</div>
</div>
</div>



<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-100 is-style-outline is-style-outline--9"><a class="wp-block-button__link has-black-color has-luminous-vivid-amber-background-color has-text-color has-background wp-element-button" href="https://cursosgratisunam.com/#1-todos-los-cursos-en-l%C3%ADnea-gratis" style="border-radius:10px" data-wpel-link="internal"><strong>VER TODOS LOS CURSOS GRATUITOS</strong></a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/biologia/fundamentos-bioquimicos-de-la-vida/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Curso sobre captación y aprovechamiento del agua de lluvia</title>
		<link>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/captacion-aprovechamiento-del-agua/</link>
					<comments>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/captacion-aprovechamiento-del-agua/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Thu, 29 May 2025 00:09:28 +0000</pubDate>
				<category><![CDATA[Cursos de Sostenibilidad y Medio Ambiente gratis]]></category>
		<category><![CDATA[Cursos de Ecología gratis]]></category>
		<category><![CDATA[Capacitate para el empleo]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12211</guid>

					<description><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/curso-captacion-y-aprovechamiento-del-agua-de-lluvia.webp" class="attachment-large size-large wp-post-image" alt="curso gratis captacion y aprovechamiento del agua de lluvia" decoding="async" loading="lazy" /></div>Cada vez que llueve, una parte valiosa del agua simplemente desaparece por el drenaje, sin que&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/curso-captacion-y-aprovechamiento-del-agua-de-lluvia.webp" class="attachment-large size-large wp-post-image" alt="curso gratis captacion y aprovechamiento del agua de lluvia" decoding="async" loading="lazy" /></div>
<p class="has-text-align-center wp-block-paragraph">Cada vez que llueve, una parte valiosa del agua simplemente desaparece por el drenaje, sin que nadie la aproveche. Mientras tanto, en muchas regiones, el acceso al agua sigue siendo un problema cotidiano. Esta paradoja es más común de lo que parece, y lo cierto es que gran parte de esa agua podría usarse para cubrir necesidades básicas.</p>



<p class="has-text-align-center wp-block-paragraph">Captar y aprovechar el agua de lluvia <strong>es más sencillo de lo que muchos imaginan</strong>. No se necesita ser un experto ni invertir grandes cantidades de dinero para hacerlo. <strong>Hay formas accesibles y efectivas de recolectarla, protegerla y darle un buen uso</strong>, tanto en áreas rurales como en ciudades donde el recurso puede escasear.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso brinda las herramientas esenciales</strong> para aprender técnicas prácticas de captación y manejo eficiente del agua, abordando desde lo más elemental hasta métodos sencillos y económicos para recolectarla, purificarla y almacenarla adecuadamente.</p>



<h2 class="wp-block-heading has-text-align-center">¿Qué aprenderás en el curso?</h2>



<p class="has-text-align-center wp-block-paragraph">Lo primero que aprenderás en este curso será <strong>como se comporta el agua en la naturaleza y por qué no llega a todos por igual</strong>. Entenderás por qué en algunas regiones abunda mientras en otras apenas alcanza, y como factores como el cambio climático y el uso desmedido afectan directamente su disponibilidad.</p>



<p class="has-text-align-center wp-block-paragraph">Aprenderás a <strong>estimar con precisión cuánta agua de lluvia puedes recolectar</strong> en función del clima de tu zona y el tamaño de las superficies disponibles, como techos o patios. Además, sabrás <strong>evaluar si vale la pena instalar un sistema de captación</strong> según las necesidades de tu hogar o comunidad.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Te familiarizarás con distintos tipos de sistemas para captar agua</strong>: desde los más sencillos para casas o pequeños jardines, hasta los más grandes pensados para comunidades enteras. Aprenderás qué elementos básicos necesitas, cómo funcionan y cómo integrarlos fácilmente.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>También aprenderás a asegurar que el agua que captures sea segura para el consumo diario</strong>. Esto incluye identificar posibles contaminantes y aplicar métodos de filtración sencillos, económicos y efectivos, que aseguren la calidad del agua recolectada.</p>



<p class="has-text-align-center wp-block-paragraph">Por último,<strong> aprenderás cómo almacenar el agua de manera adecuada</strong>, evitando pérdidas por evaporación o filtraciones. También descubrirás <strong>técnicas innovadoras</strong> para recolectar agua directamente del aire o de la niebla, especialmente útiles en zonas áridas o con escasas precipitaciones.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/sostenibilidad-medio-ambiente/tratamiento-almacenamiento-del-agua/" data-wpel-link="internal">Curso sobre tratamiento y almacenamiento seguro del agua en el hogar</a></p>



<p class="has-text-align-center wp-block-paragraph"><strong>Lo que aprenderás en el curso:</strong></p>



<ul class="wp-block-list">
<li>Comprender por qué el agua es limitada y cómo se distribuye en el planeta.</li>



<li>Identificar los efectos del cambio climático sobre la disponibilidad del agua.</li>



<li>Conocer el ciclo del agua y su relación con el consumo humano.</li>



<li>Calcular la cantidad de lluvia que se puede recolectar en un espacio determinado.</li>



<li>Estimar cuánta agua necesita una vivienda o comunidad según su uso.</li>



<li>Diferenciar entre sistemas de captación caseros y de mayor escala.</li>



<li>Diseñar un sistema de captación adecuado al entorno disponible.</li>



<li>Aplicar métodos simples para limpiar y desinfectar el agua recolectada.</li>



<li>Construir soluciones para almacenar el agua sin que se pierda o contamine.</li>



<li>Explorar otras formas de captar agua en zonas donde casi no llueve.</li>
</ul>



<p class="has-text-align-center wp-block-paragraph">Al finalizar el curso, tendrás los conocimientos necesarios para instalar un sistema práctico de captación de agua en tu entorno inmediato, contribuyendo directamente a solucionar problemas cotidianos relacionados con la escasez y el manejo responsable del agua.</p>



<h2 class="wp-block-heading has-text-align-center">¿A quién está dirigido el curso?</h2>



<p class="has-text-align-center wp-block-paragraph">Este curso es ideal para personas que viven en zonas donde el agua no siempre está disponible o llega de manera irregular, y que desean encontrar formas prácticas para <strong>captarla y aprovecharla mejor</strong>.</p>



<p class="has-text-align-center wp-block-paragraph">También resulta muy útil para quienes forman parte de grupos comunitarios, escuelas o proyectos sociales, y <strong>buscan soluciones sencillas para mejorar el acceso al agua </strong>en su entorno inmediato, ayudando a más personas a tener un suministro más constante.</p>



<p class="has-text-align-center wp-block-paragraph">Además, es una buena opción para quienes quieren aprender sobre técnicas sustentables y aplicables en la vida diaria, ya sea para uso doméstico, huertos, o pequeñas producciones, y para quienes están interesados en contribuir a un <strong>uso responsable y consciente del agua</strong>.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/ingenieria/energia-hidroelectrica-autoconsumo/" data-wpel-link="internal">Curso de energía hidroeléctrica para autoconsumo</a></p>



<div class="wp-block-columns bloque2 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="detalles-del-curso">Detalles del curso</h2>



<ul class="wp-block-list">
<li><strong>Nombre del curso</strong>: <em>Cosecha y cultivo de agua</em></li>



<li><strong>Duración:</strong> <em>30 horas aproximadamente</em></li>



<li><strong>Plataforma:</strong> <em>Capacítate para el empleo</em></li>



<li><strong>Categoría:</strong> <a href="https://cursosgratisunam.com/sostenibilidad-medio-ambiente/" data-wpel-link="internal"><em>Sostenibilidad y Medio Ambiente</em></a> / <a href="https://cursosgratisunam.com/ecologia/" data-wpel-link="internal"><em>Ecología</em></a></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="300" height="450" loading="lazy" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/captacion-y-aprovechamiento-del-agua-de-lluvia-curso.webp" alt="captacion y aprovechamiento del agua de lluvia curso gratis" class="wp-image-12213"/></figure>
</div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="temario-del-curso">Temario del curso</h2>


<div class="su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed" data-scroll-offset="0" data-anchor-in-url="no"><div class="su-spoiler-title" tabindex="0" role="button"><span class="su-spoiler-icon"></span>Nivel 1</div><div class="su-spoiler-content su-u-clearfix su-u-trim">
<ul>
<li>Lección 1
<ul>
<li>El agua y su consumo</li>
<li>Disponibilidad del agua</li>
<li>Ciclo hidrológico</li>
<li>Cambio climático</li>
<li>Escasez del agua</li>
<li>Importancia del agua</li>
</ul>
</li>
</ul>
</div></div>


<div class="su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed" data-scroll-offset="0" data-anchor-in-url="no"><div class="su-spoiler-title" tabindex="0" role="button"><span class="su-spoiler-icon"></span>Nivel 2</div><div class="su-spoiler-content su-u-clearfix su-u-trim">
<ul>
<li>Lección 1
<ul>
<li>Estimación de escorrentía</li>
<li>Precipitación aprovechable</li>
<li>Estimación de déficit de agua</li>
<li>Cantidad de agua aprovechable</li>
</ul>
</li>
</ul>
</div></div>


<div class="su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed" data-scroll-offset="0" data-anchor-in-url="no"><div class="su-spoiler-title" tabindex="0" role="button"><span class="su-spoiler-icon"></span>Nivel 3</div><div class="su-spoiler-content su-u-clearfix su-u-trim">
<ul>
<li>Lección 1
<ul>
<li>Macrocaptación</li>
<li>Microcaptación</li>
<li>Sistema de captación de agua</li>
<li>Área de captación</li>
<li>Conducción</li>
<li>Sistema de captación de agua</li>
</ul>
</li>
<li>Lección 2
<ul>
<li>Contaminación del agua</li>
<li>Calidad del agua para el consumo humano</li>
<li>Separador de primeras lluvias</li>
<li>Filtro lento de arena</li>
<li>Clorado</li>
<li>Térmico</li>
<li>Métodos de desinfección del agua</li>
</ul>
</li>
<li>Lección 3
<ul>
<li>Almacenamiento</li>
<li>Técnicas de construcción para estructuras de almacenamiento</li>
<li>Reducción de pérdidas de agua en el almacenamiento</li>
<li>Almacenamiento y filtrado de agua captada</li>
</ul>
</li>
</ul>
</div></div>


<div class="su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed" data-scroll-offset="0" data-anchor-in-url="no"><div class="su-spoiler-title" tabindex="0" role="button"><span class="su-spoiler-icon"></span>Nivel 4</div><div class="su-spoiler-content su-u-clearfix su-u-trim">
<ul>
<li>Lección 1
<ul>
<li>Captación de agua en el aire</li>
<li>Captación de agua en la niebla</li>
<li>Otras técnicas de captación de agua</li>
</ul>
</li>
</ul>
</div></div>


<div style="text-align: center; margin-bottom: 20px;">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9224474948885584"
     crossorigin="anonymous"></script>
<!-- Unam antes botón -->
<ins class="adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-9224474948885584"
     data-ad-slot="8070154997"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<div style="text-align: center; margin-bottom: 20px;">
  Puedes ingresar al curso aquí abajo: 
</div>


<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-75 is-style-outline , boton-cursos is-style-outline--10"><a class="wp-block-button__link has-black-color has-white-background-color has-text-color has-background has-custom-font-size wp-element-button" href="https://capacitateparaelempleo.org/cursos/view/95" style="border-radius:5px;font-size:28px" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external">IR AL CURSO</a></div>
</div>
</div>
</div>



<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-100 is-style-outline is-style-outline--11"><a class="wp-block-button__link has-black-color has-luminous-vivid-amber-background-color has-text-color has-background wp-element-button" href="https://cursosgratisunam.com/#1-todos-los-cursos-en-l%C3%ADnea-gratis" style="border-radius:10px" data-wpel-link="internal"><strong>VER TODOS LOS CURSOS GRATUITOS</strong></a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/captacion-aprovechamiento-del-agua/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Curso sobre producción de energía a partir de biomasa</title>
		<link>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/biomasa/</link>
					<comments>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/biomasa/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Tue, 27 May 2025 19:02:11 +0000</pubDate>
				<category><![CDATA[Cursos de Sostenibilidad y Medio Ambiente gratis]]></category>
		<category><![CDATA[Cursos de Ecología gratis]]></category>
		<category><![CDATA[Cursos de Ingeniería gratis]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12203</guid>

					<description><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/curso-de-biomasa.webp" class="attachment-large size-large wp-post-image" alt="curso biomasa" decoding="async" loading="lazy" /></div>La biomasa es una forma de energía que proviene de materiales que, de otro modo, terminarían&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/curso-de-biomasa.webp" class="attachment-large size-large wp-post-image" alt="curso biomasa" decoding="async" loading="lazy" /></div>
<p class="has-text-align-center wp-block-paragraph">La biomasa es una forma de energía que proviene de materiales que, de otro modo, terminarían como desechos. Restos agrícolas, residuos forestales o incluso ciertas algas pueden convertirse en una fuente energética útil, accesible y mucho menos contaminante que los combustibles tradicionales.</p>



<p class="has-text-align-center wp-block-paragraph">Su uso no solo reduce la dependencia del petróleo, también <strong>aprovecha recursos locales, mejora el manejo de residuos</strong> y abre posibilidades en zonas rurales. Por eso, cada vez más personas y comunidades están interesadas en aprender cómo funciona y cómo se puede producir de forma eficiente.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso ofrece una formación completa y sencilla</strong> sobre cómo transformar materia orgánica en energía, explorando los métodos, procesos y tecnologías que hacen posible el aprovechamiento de la biomasa en distintos contextos.</p>



<h2 class="wp-block-heading has-text-align-center">¿Qué aprenderás en el curso?</h2>



<p class="has-text-align-center wp-block-paragraph">En este curso aprenderás cómo transformar residuos orgánicos, cultivos específicos e incluso algas en energía aprovechable. Comprenderás desde la selección adecuada de materiales hasta las distintas formas en que pueden convertirse en combustibles útiles como bioetanol, biodiésel o biogás.</p>



<p class="has-text-align-center wp-block-paragraph">También explorarás <strong>el ciclo del carbono y por qué es tan importante en la producción de biomasa</strong>, así como las ventajas, limitaciones y regulaciones que afectan su uso cotidiano e industrial. No se trata solo de producir energía, sino de hacerlo correctamente.</p>



<p class="has-text-align-center wp-block-paragraph">Conocerás los procesos específicos para obtener biomasa sólida a partir de madera, residuos forestales y agrícolas. Además, descubrirás técnicas para transformar estos recursos en materiales listos para ser usados como fuente energética doméstica o comercial, desde virutas hasta astillas de madera.</p>



<p class="has-text-align-center wp-block-paragraph">Asimismo, se abordarán alternativas innovadoras, como la producción de biomasa mediante el uso de algas y aguas residuales, abriendo posibilidades interesantes para resolver desafíos ambientales al tiempo que se genera energía.</p>



<p class="has-text-align-center wp-block-paragraph">Finalmente, profundizarás en procesos avanzados como la <strong>gasificación, pirólisis y torrefacción</strong>, métodos útiles para maximizar la eficiencia energética de los recursos obtenidos. Al concluir, dominarás las mejores prácticas para convertir residuos orgánicos en energía valiosa y sostenible.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/ecologia/compostaje-organico/" data-wpel-link="internal">Curso de compostaje gratis</a></p>



<p class="has-text-align-center wp-block-paragraph"><strong>Lo que aprenderás en el curso:</strong></p>



<ul class="wp-block-list">
<li>Qué es la biomasa, cómo se clasifica y de dónde proviene.</li>



<li>Cómo se relaciona con el ciclo del carbono y qué papel juega en el medio ambiente.</li>



<li>Cuáles son los cultivos energéticos adecuados para producir biocombustibles.</li>



<li>Cómo se elabora el bioetanol y en qué se puede aplicar.</li>



<li>Qué pasos siguen para producir biodiésel desde cultivos o residuos.</li>



<li>Cómo funciona el biogás y cómo se puede producir en diferentes contextos.</li>



<li>Qué tipos de biomasa sólida existen y cómo se transforman en energía.</li>



<li>Qué papel juegan las algas y aguas residuales como fuentes de biomasa.</li>



<li>En qué consisten procesos avanzados como la pirólisis y la torrefacción.</li>



<li>Cómo se pueden aprovechar residuos orgánicos mediante digestión y compostaje.</li>
</ul>



<p class="has-text-align-center wp-block-paragraph">Al finalizar el curso, <strong>sabrás cómo transformar distintos materiales orgánicos en fuentes de energía útiles</strong>, entendiendo los procesos, los beneficios y las condiciones necesarias para aplicarlos de forma práctica y eficiente.</p>



<h2 class="wp-block-heading has-text-align-center">¿A quién está dirigido el curso?</h2>



<p class="has-text-align-center wp-block-paragraph">Este curso está pensado especialmente para <strong>personas que buscan alternativas energéticas prácticas y sostenibles</strong>. Si tienes curiosidad por aprender cómo convertir residuos comunes en energía útil, este contenido será especialmente interesante para ti.</p>



<p class="has-text-align-center wp-block-paragraph">También es una opción ideal para <strong>profesionistas o estudiantes del sector agrícola, ambiental o rural</strong>, que quieren aprovechar al máximo los recursos disponibles en sus actividades cotidianas. El curso brinda información útil para quienes desean generar valor económico mientras cuidan el medio ambiente.</p>



<p class="has-text-align-center wp-block-paragraph">Además, es muy recomendable para <strong>emprendedores, técnicos ambientales o encargados de proyectos comunitarios</strong> que busquen implementar soluciones energéticas innovadoras, rentables y responsables con el entorno. En este curso encontrarán los conocimientos necesarios para llevar adelante sus iniciativas con éxito.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/ingenieria/almacenamiento-de-energia-renovable-en-baterias/" data-wpel-link="internal">Curso sobre almacenamiento de energía renovable en baterías</a></p>



<div class="wp-block-columns bloque2 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="detalles-del-curso">Detalles del curso</h2>



<ul class="wp-block-list">
<li><strong>Nombre del curso</strong>: <em>Productor de biomasa</em></li>



<li><strong>Duración:</strong> <em>73 horas aproximadamente</em></li>



<li><strong>Plataforma:</strong> <em>Capacítate para el empleo</em></li>



<li><strong>Categoría:</strong> <a href="https://cursosgratisunam.com/sostenibilidad-medio-ambiente/" data-wpel-link="internal"><em>Sostenibilidad y Medio Ambiente</em></a> / <a href="https://cursosgratisunam.com/ecologia/" data-wpel-link="internal"><em>Ecología </em></a>/ <a href="https://cursosgratisunam.com/ingenieria/" data-wpel-link="internal"><em>Ingeniería</em></a></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="300" height="450" loading="lazy" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/biomasa-curso.webp" alt="biomasa curso gratis" class="wp-image-12204"/></figure>
</div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="temario-del-curso">Temario del curso</h2>


<div class="su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed" data-scroll-offset="0" data-anchor-in-url="no"><div class="su-spoiler-title" tabindex="0" role="button"><span class="su-spoiler-icon"></span>Nivel 1</div><div class="su-spoiler-content su-u-clearfix su-u-trim">
<ul>
<li>Lección 1
<ul>
<li>Energía de la biomasa</li>
<li>Rutas de formación y consumo de biomasa</li>
<li>Tipos de biomasa</li>
<li>Ciclo del carbono</li>
<li>Carbono como elemento básico de la biomasa</li>
<li>Normatividad</li>
<li>Ventajas y desventajas de la biomasa</li>
<li>Limitantes para producir biomasa</li>
<li>La biomasa y su origen</li>
</ul>
</li>
</ul>
</div></div>


<div class="su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed" data-scroll-offset="0" data-anchor-in-url="no"><div class="su-spoiler-title" tabindex="0" role="button"><span class="su-spoiler-icon"></span>Nivel 2</div><div class="su-spoiler-content su-u-clearfix su-u-trim">
<ul>
<li>Lección 1
<ul>
<li>Cultivos energéticos para bioetanol</li>
<li>Proceso de producción de bioetanol</li>
<li>Aplicaciones del bioetanol</li>
<li>Cultivos energéticos para biodiésel</li>
<li>Proceso de producción de biodiésel</li>
<li>Aplicaciones del biodiésel</li>
<li>Biodiésel y bioetanol</li>
<li>Síntesis de bioetanol y biodiésel</li>
</ul>
</li>
<li>Lección 2
<ul>
<li>Cultivos energéticos para formar biogás</li>
<li>Proceso de producción del biogás</li>
<li>Aplicaciones del biogás</li>
<li>Cuándo producir biomasa a partir de cultivos</li>
<li>Rutas de formación del biogás</li>
</ul>
</li>
<li>Lección 3
<ul>
<li>Cultivos energéticos para biomasa sólida</li>
<li>Tipos de biomasa sólida</li>
<li>Leña como biomasa forestal</li>
<li>Cubicaje de madera</li>
<li>Proceso de transformación de la madera</li>
<li>Proceso de secado</li>
<li>Proceso de elaboración de la biomasa sólida</li>
<li>Elaboración de virutas o astillas de madera</li>
<li>Producción y consumo de la biomasa sólida</li>
</ul>
</li>
</ul>
</div></div>


<div class="su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed" data-scroll-offset="0" data-anchor-in-url="no"><div class="su-spoiler-title" tabindex="0" role="button"><span class="su-spoiler-icon"></span>Nivel 3</div><div class="su-spoiler-content su-u-clearfix su-u-trim">
<ul>
<li>Lección 1
<ul>
<li>Clasificación de los residuos</li>
<li>Degradación de la materia orgánica</li>
<li>Impacto ambiental</li>
<li>Valoración energética</li>
<li>Compostaje</li>
<li>Relleno sanitario</li>
<li>Obtención de biodiésel a partir de residuos</li>
<li>Biodigestión</li>
<li>Biodigestor para pequeños hogares</li>
<li>Aprovechamiento de residuos y su valoración energética</li>
</ul>
</li>
</ul>
</div></div>


<div class="su-spoiler su-spoiler-style-fancy su-spoiler-icon-plus su-spoiler-closed" data-scroll-offset="0" data-anchor-in-url="no"><div class="su-spoiler-title" tabindex="0" role="button"><span class="su-spoiler-icon"></span>Nivel 4</div><div class="su-spoiler-content su-u-clearfix su-u-trim">
<ul>
<li>Lección 1
<ul>
<li>Cogeneración</li>
<li>Eficiencia energética</li>
<li>Tecnologías para la biomasa</li>
<li>Otros biocombustibles</li>
<li>Proyectos de biomasa a energía</li>
<li>Buenas prácticas para usar de forma eficiente los biocombustibles</li>
</ul>
</li>
</ul>
</div></div>


<div style="text-align: center; margin-bottom: 20px;">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9224474948885584"
     crossorigin="anonymous"></script>
<!-- Unam antes botón -->
<ins class="adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-9224474948885584"
     data-ad-slot="8070154997"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<div style="text-align: center; margin-bottom: 20px;">
  Puedes ingresar al curso aquí abajo: 
</div>


<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-75 is-style-outline , boton-cursos is-style-outline--12"><a class="wp-block-button__link has-black-color has-white-background-color has-text-color has-background has-custom-font-size wp-element-button" href="https://capacitateparaelempleo.org/cursos/view/100324" style="border-radius:5px;font-size:28px" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external">IR AL CURSO</a></div>
</div>
</div>
</div>



<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-100 is-style-outline is-style-outline--13"><a class="wp-block-button__link has-black-color has-luminous-vivid-amber-background-color has-text-color has-background wp-element-button" href="https://cursosgratisunam.com/#1-todos-los-cursos-en-l%C3%ADnea-gratis" style="border-radius:10px" data-wpel-link="internal"><strong>VER TODOS LOS CURSOS GRATUITOS</strong></a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/sostenibilidad-medio-ambiente/biomasa/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Curso sobre el comportamiento del consumidor</title>
		<link>https://cursosgratisunam.com/administracion/comportamiento-del-consumidor/</link>
					<comments>https://cursosgratisunam.com/administracion/comportamiento-del-consumidor/#respond</comments>
		
		<dc:creator><![CDATA[Admin]]></dc:creator>
		<pubDate>Mon, 26 May 2025 22:01:53 +0000</pubDate>
				<category><![CDATA[Cursos de Administración gratis]]></category>
		<category><![CDATA[Emprendimiento y Negocios]]></category>
		<category><![CDATA[UVEG]]></category>
		<guid isPermaLink="false">https://cursosgratisunam.com/?p=12196</guid>

					<description><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/curso-de-comportamiento-del-consumidor-gratis.webp" class="attachment-large size-large wp-post-image" alt="curso comportamiento del consumidor" decoding="async" loading="lazy" /></div>Comprender por qué una persona elige cierto producto, cambia de marca o decide no comprar algo&#8230;]]></description>
										<content:encoded><![CDATA[<div><img width="700" height="300" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/curso-de-comportamiento-del-consumidor-gratis.webp" class="attachment-large size-large wp-post-image" alt="curso comportamiento del consumidor" decoding="async" loading="lazy" /></div>
<p class="has-text-align-center wp-block-paragraph">Comprender por qué una persona elige cierto producto, cambia de marca o decide no comprar algo que necesita no es casualidad. <strong>Detrás de cada decisión de compra hay una serie de influencias internas y externas</strong> que moldean el comportamiento del consumidor, incluso cuando éste no es plenamente consciente de ello.</p>



<p class="has-text-align-center wp-block-paragraph">La forma en que percibimos los productos, cómo nos afectan las opiniones de otros o qué rol juega la cultura en nuestros hábitos de consumo son temas que pueden parecer invisibles, pero están presentes todos los días. <strong>Estudiar estas conductas no solo es útil para quienes venden, también para quienes desean entender mejor su entorno</strong> y la lógica detrás de tantas decisiones cotidianas.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso ofrece una introducción completa al análisis del consumidor</strong>, con explicaciones claras y ejemplos reales que permiten aprender paso a paso cómo se forman las decisiones de compra y qué herramientas pueden utilizarse para interpretarlas o influir en ellas.</p>



<h2 class="wp-block-heading has-text-align-center">¿Qué aprenderás en el curso?</h2>



<p class="has-text-align-center wp-block-paragraph">En este curso aprenderás cómo funcionan realmente las decisiones de compra, comenzando por entender al consumidor como un individuo único, con motivaciones, emociones y características propias.</p>



<p class="has-text-align-center wp-block-paragraph">Descubrirás la importancia de los modelos teóricos que explican por qué las personas se comportan como lo hacen al adquirir productos o servicios. Además, te familiarizarás con conceptos fundamentales como los <strong>derechos básicos del consumidor</strong> y cómo segmentar de manera efectiva a diferentes públicos.</p>



<p class="has-text-align-center wp-block-paragraph">También profundizarás en aspectos personales del consumidor, como la <strong>motivación y la personalidad</strong>, descubriendo cómo las emociones y percepciones pueden influir notablemente en el proceso de elección y fidelidad hacia una marca.</p>



<p class="has-text-align-center wp-block-paragraph">Por otra parte, explorarás cómo los grupos sociales, las familias y las culturas marcan una enorme diferencia en los hábitos de consumo. Analizarás por qué ciertos productos triunfan en algunas comunidades y no en otras, aprendiendo a adaptar mejor tus estrategias de marketing según el contexto social.</p>



<p class="has-text-align-center wp-block-paragraph">Para finalizar, analizarás paso a paso cómo una persona llega a tomar una decisión de compra, considerando aspectos como <strong>la influencia de su entorno, la opinión de otras personas y la adopción de nuevas ideas o productos</strong>. Esto te permitirá comprender el recorrido completo que realiza un consumidor antes de elegir, y <strong>sabrás cómo actuar estratégicamente para influir en ese proceso de forma efectiva</strong>.</p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/finanzas/consumo/" data-wpel-link="internal">Curso para mejorar tus hábitos de consumo</a></p>



<p class="has-text-align-center wp-block-paragraph"><strong>Lo que aprenderás en el curso:</strong></p>



<ul class="wp-block-list">
<li>Qué es el análisis del comportamiento del consumidor y para qué sirve</li>



<li>Cómo identificar los principales modelos que explican cómo actúa un consumidor</li>



<li>Qué derechos tiene el consumidor y cuál es su respaldo legal en México</li>



<li>Cómo se define y se aplica la segmentación de mercados</li>



<li>Qué papel juegan la motivación y la personalidad en el consumo</li>



<li>Cómo funciona la percepción del consumidor y por qué influye tanto</li>



<li>De qué manera se forman y cambian las actitudes hacia un producto o marca</li>



<li>Cuáles son las influencias sociales más comunes en el comportamiento de compra</li>



<li>Cómo afecta la cultura y la clase social en los patrones de consumo</li>



<li>Qué etapas siguen las personas al tomar decisiones de compra y cómo influyen los entornos</li>
</ul>



<p class="has-text-align-center wp-block-paragraph">Al finalizar el curso, <strong>serás capaz de identificar qué impulsa o detiene una compra, cómo se forman las preferencias de los consumidores y cómo aprovechar ese conocimiento en contextos reales</strong>, ya sea para aplicarlo en proyectos propios, mejorar estrategias de comunicación o simplemente comprender mejor el entorno de consumo actual.</p>



<h2 class="wp-block-heading has-text-align-center">¿A quién está dirigido el curso?</h2>



<p class="has-text-align-center wp-block-paragraph"><strong>Este curso está pensado para cualquier persona que quiera entender cómo piensan los consumidores</strong>, sin necesidad de tener experiencia previa en marketing o negocios. Es ideal para quienes sienten curiosidad por saber qué hay detrás de las decisiones de compra y cómo influyen factores personales, sociales y culturales.</p>



<p class="has-text-align-center wp-block-paragraph">También resulta muy útil para <strong>emprendedores, vendedores o creadores de contenido</strong> que buscan mejorar la forma en que presentan sus productos o servicios. Con esta formación podrán afinar sus estrategias y conectar mejor con su público objetivo.</p>



<p class="has-text-align-center wp-block-paragraph"><strong>Estudiantes de carreras como administración, comunicación, psicología o sociología</strong> encontrarán en este curso una base sólida para complementar su formación académica y aplicar este conocimiento en futuros proyectos o investigaciones.</p>



<p class="wp-block-paragraph"></p>



<p class="has-background wp-block-paragraph" style="background-color:#fff15c"><strong><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Te puede interesar:</strong> <a href="https://cursosgratisunam.com/negocios/analisis-del-comportamiento-del-consumidor-digital/" data-wpel-link="internal">Curso sobre análisis del comportamiento del consumidor digital</a></p>



<div class="wp-block-columns bloque2 is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="detalles-del-curso">Detalles del curso</h2>



<ul class="wp-block-list">
<li><strong>Nombre del curso</strong>: <em>Comportamiento del consumidor</em></li>



<li><strong>Duración:</strong> <em>60 horas aproximadamente</em></li>



<li><strong>Institución:</strong> <em>Universidad Virtual del Estado de Guanajuato</em></li>



<li><strong>Categoría:</strong> <a href="https://cursosgratisunam.com/administracion/" data-wpel-link="internal"><em>Administración </em></a>/ <a href="https://cursosgratisunam.com/negocios/" data-wpel-link="internal"><em>Emprendimiento y Negocios</em></a></li>
</ul>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="300" height="450" loading="lazy" src="https://cursosgratisunam.com/wp-content/uploads/2025/05/comportamiento-del-consumidor-curso.webp" alt="comportamiento del consumidor curso gratis" class="wp-image-12197"/></figure>
</div></div>



<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow">
<h2 class="wp-block-heading has-text-align-center" id="temario-del-curso">Temario del curso</h2>



<ul class="wp-block-list">
<li><strong>Módulo 1: </strong>El consumidor como individuo</li>



<li><strong>Módulo 2: </strong>Los consumidores en sus ambientes social y cultural</li>



<li><strong>Módulo 3: </strong>El proceso de toma de decisiones de compra</li>
</ul>


<div style="text-align: center; margin-bottom: 20px;">
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9224474948885584"
     crossorigin="anonymous"></script>
<!-- Unam antes botón -->
<ins class="adsbygoogle"
     style="display:inline-block;width:300px;height:250px"
     data-ad-client="ca-pub-9224474948885584"
     data-ad-slot="8070154997"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<div style="text-align: center; margin-bottom: 20px;">
  Puedes ingresar al curso aquí abajo: 
</div>


<div class="wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-fe48e5de wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-75 is-style-outline , boton-cursos is-style-outline--14"><a class="wp-block-button__link has-black-color has-white-background-color has-text-color has-background has-custom-font-size wp-element-button" href="https://uveg.edu.mx/index.php/es/comportamiento-del-consumidor" style="border-radius:5px;font-size:28px" target="_blank" rel="noreferrer noopener nofollow external" data-wpel-link="external">IR AL CURSO</a></div>
</div>
</div>
</div>



<div class="wp-block-buttons is-horizontal is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-7d812b4c wp-block-buttons-is-layout-flex">
<div class="wp-block-button has-custom-width wp-block-button__width-100 is-style-outline is-style-outline--15"><a class="wp-block-button__link has-black-color has-luminous-vivid-amber-background-color has-text-color has-background wp-element-button" href="https://cursosgratisunam.com/#1-todos-los-cursos-en-l%C3%ADnea-gratis" style="border-radius:10px" data-wpel-link="internal"><strong>VER TODOS LOS CURSOS GRATIS</strong></a></div>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://cursosgratisunam.com/administracion/comportamiento-del-consumidor/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
