<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[Cesar Zavaleta]]></title><description><![CDATA[Programación, Educación y Gaming]]></description><link>https://cesarzavaleta.dev/</link><image><url>https://cesarzavaleta.dev/favicon.png</url><title>Cesar Zavaleta</title><link>https://cesarzavaleta.dev/</link></image><generator>Ghost 5.88</generator><lastBuildDate>Thu, 07 May 2026 21:27:19 GMT</lastBuildDate><atom:link href="https://cesarzavaleta.dev/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Evaluación de Prototipos: Análisis de Usabilidad y Heurísticas de Nielsen | Semana 7]]></title><description><![CDATA[Aprende a evaluar prototipos aplicando heurísticas de Nielsen y métodos formales de usabilidad. Análisis estructurado, identificación de problemas y propuestas de mejora para interfaces.]]></description><link>https://cesarzavaleta.dev/evaluacion-prototipos/</link><guid isPermaLink="false">69fa5e5df8edf9170672d5eb</guid><dc:creator><![CDATA[Cesar Eduardo Zavaleta Leon]]></dc:creator><pubDate>Tue, 05 May 2026 21:18:54 GMT</pubDate><content:encoded><![CDATA[
<!--kg-card-begin: html-->
  <main class="presentation" aria-label="Presentaci&#xF3;n">
      <!-- Slide 0: IHM Principal -->
    <img src="https://cesarzavaleta.dev/content/images/2026/05/bannerutp.png" alt="Banner UTP" class="slide-banner">
      <section class="slide active" aria-hidden="false">
        <div class="slide-content slide-content--image">
          <img src="https://cesarzavaleta.dev/content/images/size/w1600/2026/05/ihm-principal.png" alt="...">
        </div>
      </section>

      <!-- Slide 0.5: Pautas del trabajo -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Antes de comenzar</p>
          <h2>Pautas del Trabajo</h2>
          <div class="pautas-grid">
            <div class="pauta-card">
              <span class="pauta-icon">&#x1F4AC;</span>
              <span>Puedes participar por <strong>chat, micr&#xF3;fono</strong> y pizarra colaborativa</span>
            </div>
            <div class="pauta-card">
              <span class="pauta-icon">&#x1F4F7;</span>
              <span>Se recomienda <strong>activar tu c&#xE1;mara</strong> en los momentos de discusi&#xF3;n</span>
            </div>
            <div class="pauta-card">
              <span class="pauta-icon">&#x1F3AF;</span>
              <span>Procura que tus intervenciones sean <strong>breves y fundamentadas</strong></span>
            </div>
            <div class="pauta-card">
              <span class="pauta-icon">&#x2753;</span>
              <span>Puedes hacer tus <strong>preguntas por el chat</strong> durante toda la sesi&#xF3;n</span>
            </div>
            <div class="pauta-card">
              <span class="pauta-icon">&#x1F465;</span>
              <span>Trabajar&#xE1;s en <strong>salas peque&#xF1;as</strong> para las actividades colaborativas</span>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide: Recuperación sesión anterior -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Sesi&#xF3;n Anterior</p>
          <h2>&#xBF;Qu&#xE9; recuerdas?</h2>
          <p style="color:#475569; font-size:1rem; margin-bottom:1.5rem;">Responde en el chat &#x2014; no hay respuestas incorrectas</p>
          <div class="recall-grid">
            <div class="recall-card">
              <span class="recall-num">01</span>
              <p>&#xBF;Qu&#xE9; diferencia hay entre un dise&#xF1;o <strong>within-subjects</strong> y un dise&#xF1;o <strong>between-subjects</strong>?</p>
              <button class="recall-btn" type="button">Ver respuesta</button>
              <div class="recall-answer">
                <strong>Within-subjects:</strong> el mismo participante realiza todas las condiciones del experimento.<br>
                <strong>Between-subjects:</strong> cada participante solo realiza una condici&#xF3;n; se usan grupos distintos.
              </div>
            </div>
            <div class="recall-card">
              <span class="recall-num">02</span>
              <p>Menciona <strong>una m&#xE9;trica de usabilidad</strong> seg&#xFA;n la ISO 9241-11 y qu&#xE9; mide.</p>
              <button class="recall-btn" type="button">Ver respuesta</button>
              <div class="recall-answer">
                <ul class="recall-metric-list">
                  <li><strong>Efectividad</strong> &#x2014; grado en que el usuario completa la tarea correctamente</li>
                  <li><strong>Eficiencia</strong> &#x2014; recursos utilizados (tiempo y esfuerzo) para completarla</li>
                  <li><strong>Satisfacci&#xF3;n</strong> &#x2014; percepci&#xF3;n subjetiva del usuario al usar el sistema</li>
                </ul>
              </div>
            </div>
            <div class="recall-card">
              <span class="recall-num">03</span>
              <p>&#xBF;Para qu&#xE9; sirve la <strong>evaluaci&#xF3;n experimental</strong> en HCI?</p>
              <button class="recall-btn" type="button">Ver respuesta</button>
              <div class="recall-answer">
                Permite medir con <strong>rigor cient&#xED;fico</strong> c&#xF3;mo los usuarios interact&#xFA;an con una interfaz, controlando variables para obtener conclusiones v&#xE1;lidas y replicables.
              </div>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide: Conocimientos previos -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Conocimientos Previos</p>
          <h2>&#xBF;Cu&#xE1;nto sabes sobre esto?</h2>
          <p class="semaforo-instruccion">Usa las <strong>reacciones de Zoom</strong> o escr&#xED;belo en el chat &#x2014; una reacci&#xF3;n por concepto</p>
          <div class="reac-legend">
            <span class="reac-badge" style="background:#dcfce7;color:#166534;">&#x2705; Lo domino</span>
            <span class="reac-badge" style="background:#fef9c3;color:#854d0e;">&#x1F62E; Lo he escuchado</span>
            <span class="reac-badge" style="background:#fee2e2;color:#7f1d1d;">&#x2764;&#xFE0F; Es nuevo pero me interesa</span>
            <span class="reac-badge" style="background:#f1f5f9;color:#475569;">&#x1F602; No tengo idea</span>
          </div>
          <div class="semaforo-grid">
            <div class="semaforo-card">
              <span class="semaforo-num">A</span>
              <strong>Evaluaci&#xF3;n de Prototipos</strong>
              <p>Proceso de revisar una interfaz antes de desarrollarla</p>
              <div class="semaforo-counter">
                <button class="counter-btn c-green">&#x2705; <span>0</span></button>
                <button class="counter-btn c-yellow">&#x1F62E; <span>0</span></button>
                <button class="counter-btn c-red">&#x2764;&#xFE0F; <span>0</span></button>
                <button class="counter-btn c-gray">&#x1F602; <span>0</span></button>
                <button class="counter-reset" type="button">&#x21BA;</button>
              </div>
            </div>
            <div class="semaforo-card">
              <span class="semaforo-num">B</span>
              <strong>Heur&#xED;sticas de Nielsen</strong>
              <p>Principios para evaluar la usabilidad de una interfaz</p>
              <div class="semaforo-counter">
                <button class="counter-btn c-green">&#x2705; <span>0</span></button>
                <button class="counter-btn c-yellow">&#x1F62E; <span>0</span></button>
                <button class="counter-btn c-red">&#x2764;&#xFE0F; <span>0</span></button>
                <button class="counter-btn c-gray">&#x1F602; <span>0</span></button>
                <button class="counter-reset" type="button">&#x21BA;</button>
              </div>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide: Utilidad del tema -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Utilidad del Tema</p>
          <h2>&#xBF;D&#xF3;nde lo usar&#xED;as t&#xFA;?</h2>
          <p class="semaforo-instruccion">Escribe en el chat la letra que m&#xE1;s se acerque a tu realidad &#x2014; puedes elegir m&#xE1;s de una</p>
          <div class="utilidad-grid">
            <div class="utilidad-card">
              <div class="utilidad-header">
                <span class="utilidad-letra">A</span>
                <span class="utilidad-icono">&#x1F4BC;</span>
              </div>
              <strong>Trabajo o pr&#xE1;ctica profesional</strong>
              <p>Evaluar&#xE9; interfaces de productos reales en mi trabajo o empresa</p>
              <div class="utilidad-counter">
                <button class="utilidad-btn" type="button">&#x1F464; <span>0</span></button>
                <button class="counter-reset" type="button">&#x21BA;</button>
              </div>
            </div>
            <div class="utilidad-card">
              <div class="utilidad-header">
                <span class="utilidad-letra">B</span>
                <span class="utilidad-icono">&#x1F393;</span>
              </div>
              <strong>Proyectos acad&#xE9;micos</strong>
              <p>Aplicar&#xE9; estos m&#xE9;todos para evaluar prototipos en mis cursos o tesis</p>
              <div class="utilidad-counter">
                <button class="utilidad-btn" type="button">&#x1F464; <span>0</span></button>
                <button class="counter-reset" type="button">&#x21BA;</button>
              </div>
            </div>
            <div class="utilidad-card">
              <div class="utilidad-header">
                <span class="utilidad-letra">C</span>
                <span class="utilidad-icono">&#x1F680;</span>
              </div>
              <strong>Proyecto propio o emprendimiento</strong>
              <p>Tengo o quiero una idea de producto y necesito validar la experiencia</p>
              <div class="utilidad-counter">
                <button class="utilidad-btn" type="button">&#x1F464; <span>0</span></button>
                <button class="counter-reset" type="button">&#x21BA;</button>
              </div>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide 1: Portada -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Evaluaci&#xF3;n de Prototipos</p>
          <h1>An&#xE1;lisis, Usabilidad y Mejoras</h1>
          <p>Aprenderemos a evaluar prototipos aplicando m&#xE9;todos de an&#xE1;lisis de usabilidad y las heur&#xED;sticas de Nielsen.</p>
        </div>
      </section>

      <!-- Slide 2: Logro de aprendizaje -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Sesi&#xF3;n 7</p>
          <h2>Logro de Aprendizaje</h2>
          <p>Al finalizar esta sesi&#xF3;n, ser&#xE1;s capaz de:</p>
          <ul class="slide-list">
            <li>Evaluar prototipos de interfaces aplicando m&#xE9;todos formales</li>
            <li>Identificar problemas usando las heur&#xED;sticas de Nielsen</li>
            <li>Generar retroalimentaci&#xF3;n estructurada con propuestas de mejora</li>
          </ul>
        </div>
      </section>

      <!-- Slide 3: Evaluación de prototipos -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Evaluaci&#xF3;n de Prototipos</p>
          <h2>&#xBF;Qu&#xE9; es evaluar un prototipo?</h2>
          <p>Evaluar no es opinar. Es aplicar <strong>criterios objetivos</strong> para detectar si una interfaz permite al usuario completar sus tareas antes de escribir una l&#xED;nea de c&#xF3;digo.</p>
          <div class="eval-flow">
            <div class="eval-step">
              <span class="eval-num">1</span>
              <strong>Definir</strong>
              <p>Qu&#xE9; tareas debe poder completar el usuario</p>
            </div>
            <div class="eval-arrow">&#x2192;</div>
            <div class="eval-step">
              <span class="eval-num">2</span>
              <strong>Evaluar</strong>
              <p>Aplicar m&#xE9;todo: heur&#xED;stico, prueba o walkthrough</p>
            </div>
            <div class="eval-arrow">&#x2192;</div>
            <div class="eval-step">
              <span class="eval-num">3</span>
              <strong>Documentar</strong>
              <p>Registrar hallazgos con severidad y contexto</p>
            </div>
            <div class="eval-arrow">&#x2192;</div>
            <div class="eval-step">
              <span class="eval-num">4</span>
              <strong>Mejorar</strong>
              <p>Proponer cambios concretos y re-evaluar</p>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide 3b: Análisis de prototipos previos -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Evaluaci&#xF3;n de Prototipos</p>
          <h2>An&#xE1;lisis de Prototipos Previos</h2>
          <p>Antes de proponer cambios, es fundamental <strong>entender qu&#xE9; ya existe</strong> y por qu&#xE9; se tomaron esas decisiones.</p>
          <div class="analisis-grid">
            <div class="analisis-col">
              <p class="analisis-col-title">&#x1F50D; &#xBF;Qu&#xE9; analizar?</p>
              <ul class="analisis-list">
                <li>Flujos de navegaci&#xF3;n principales</li>
                <li>Consistencia visual y de interacci&#xF3;n</li>
                <li>Manejo de errores y estados vac&#xED;os</li>
                <li>Jerarqu&#xED;a visual y legibilidad</li>
                <li>Accesibilidad b&#xE1;sica</li>
              </ul>
            </div>
            <div class="analisis-col">
              <p class="analisis-col-title">&#x1F4CB; &#xBF;C&#xF3;mo documentarlo?</p>
              <ul class="analisis-list">
                <li>Capturas anotadas de cada pantalla</li>
                <li>Tabla de hallazgos con heur&#xED;stica violada</li>
                <li>Nivel de severidad (1&#x2013;4)</li>
                <li>Frecuencia de aparici&#xF3;n del problema</li>
                <li>Propuesta de mejora por hallazgo</li>
              </ul>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide análisis 1: Jerarquía visual -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">An&#xE1;lisis de Prototipos Previos</p>
          <h2>Ejemplo: Jerarqu&#xED;a visual en formulario</h2>
          <p>Un prototipo sin jerarqu&#xED;a visual obliga al usuario a leer todo para entender qu&#xE9; hacer.</p>
          <div class="demo-pair">
            <div class="demo-box" data-type="bad">
              <div class="demo-label bad-label demo-label--hidden">&#x274C; Sin jerarqu&#xED;a</div>
              <div class="demo-card">
                <p class="demo-card-title">Crear cuenta</p>
                <div class="proto-form proto-form--flat">
                  <div class="proto-field">Nombre completo</div>
                  <div class="proto-field">Correo electr&#xF3;nico</div>
                  <div class="proto-field">Tel&#xE9;fono</div>
                  <div class="proto-field">Pa&#xED;s de residencia</div>
                  <div class="proto-field">Fecha de nacimiento</div>
                  <div class="proto-field">Contrase&#xF1;a</div>
                  <div class="proto-field">Confirmar contrase&#xF1;a</div>
                  <div class="proto-field">C&#xF3;digo de referido</div>
                  <button class="demo-btn-bad" type="button" style="width:100%;margin-top:0.5rem;">Registrar</button>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
            <div class="demo-box" data-type="good">
              <div class="demo-label good-label demo-label--hidden">&#x2705; Con jerarqu&#xED;a</div>
              <div class="demo-card">
                <p class="demo-card-title">Crear cuenta</p>
                <div class="proto-form">
                  <p class="proto-section-label">Datos personales</p>
                  <div class="proto-field">Nombre completo</div>
                  <div class="proto-field">Correo electr&#xF3;nico</div>
                  <p class="proto-section-label">Acceso</p>
                  <div class="proto-field">Contrase&#xF1;a</div>
                  <div class="proto-field">Confirmar contrase&#xF1;a</div>
                  <button class="demo-btn-good" type="button" style="width:100%;margin-top:0.5rem;">Continuar &#x2192;</button>
                  <p style="font-size:0.75rem;color:#94a3b8;text-align:center;margin:0.3rem 0 0">Paso 1 de 2</p>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide análisis 2: Consistencia de navegación -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">An&#xE1;lisis de Prototipos Previos</p>
          <h2>Ejemplo: Consistencia de navegaci&#xF3;n</h2>
          <p>Cuando el mismo patr&#xF3;n aparece diferente en cada pantalla, el usuario pierde orientaci&#xF3;n.</p>
          <div class="demo-pair">
            <div class="demo-box" data-type="bad">
              <div class="demo-label bad-label demo-label--hidden">&#x274C; Inconsistente</div>
              <div class="demo-card">
                <p class="demo-card-title">Flujo de compra &#x2014; 3 pantallas</p>
                <div class="proto-screens">
                  <div class="proto-screen">
                    <p class="proto-screen-name">Carrito</p>
                    <button class="proto-nav-btn proto-nav--left" type="button">&#x2190; Volver</button>
                  </div>
                  <div class="proto-screen">
                    <p class="proto-screen-name">Direcci&#xF3;n</p>
                    <button class="proto-nav-btn proto-nav--right" type="button">Cancelar &#x2715;</button>
                  </div>
                  <div class="proto-screen">
                    <p class="proto-screen-name">Pago</p>
                    <button class="proto-nav-btn proto-nav--center" type="button">Ir atr&#xE1;s</button>
                  </div>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
            <div class="demo-box" data-type="good">
              <div class="demo-label good-label demo-label--hidden">&#x2705; Consistente</div>
              <div class="demo-card">
                <p class="demo-card-title">Flujo de compra &#x2014; 3 pantallas</p>
                <div class="proto-screens">
                  <div class="proto-screen">
                    <p class="proto-screen-name">Carrito</p>
                    <button class="proto-nav-btn proto-nav--good" type="button">&#x2190; Atr&#xE1;s</button>
                  </div>
                  <div class="proto-screen">
                    <p class="proto-screen-name">Direcci&#xF3;n</p>
                    <button class="proto-nav-btn proto-nav--good" type="button">&#x2190; Atr&#xE1;s</button>
                  </div>
                  <div class="proto-screen">
                    <p class="proto-screen-name">Pago</p>
                    <button class="proto-nav-btn proto-nav--good" type="button">&#x2190; Atr&#xE1;s</button>
                  </div>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide análisis 3: Estado vacío -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">An&#xE1;lisis de Prototipos Previos</p>
          <h2>Ejemplo: Estado vac&#xED;o sin orientaci&#xF3;n</h2>
          <p>Los estados vac&#xED;os son oportunidades perdidas: el usuario no sabe qu&#xE9; hacer a continuaci&#xF3;n.</p>
          <div class="demo-pair">
            <div class="demo-box" data-type="bad">
              <div class="demo-label bad-label demo-label--hidden">&#x274C; Sin orientaci&#xF3;n</div>
              <div class="demo-card">
                <p class="demo-card-title">Mis proyectos</p>
                <div class="proto-empty proto-empty--bad">
                  <p style="color:#94a3b8;font-size:0.9rem;margin:0;">No hay proyectos.</p>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
            <div class="demo-box" data-type="good">
              <div class="demo-label good-label demo-label--hidden">&#x2705; Con orientaci&#xF3;n</div>
              <div class="demo-card">
                <p class="demo-card-title">Mis proyectos</p>
                <div class="proto-empty proto-empty--good">
                  <p class="proto-empty-icon">&#x1F4C1;</p>
                  <p class="proto-empty-title">A&#xFA;n no tienes proyectos</p>
                  <p class="proto-empty-sub">Crea tu primer proyecto y comienza a colaborar con tu equipo.</p>
                  <button class="demo-btn-good" type="button">+ Crear proyecto</button>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide ID-1: ¿Qué es un problema de usabilidad? -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Identificaci&#xF3;n de Problemas</p>
          <h2>&#xBF;Cu&#xE1;ndo algo es un problema de usabilidad?</h2>
          <p>No toda fricci&#xF3;n cuenta. Un hallazgo es un problema real cuando cumple al menos una de estas condiciones:</p>
          <div class="eval-flow">
            <div class="eval-step">
              <span class="eval-num">1</span>
              <strong>Impide la tarea</strong>
              <p>El usuario no puede completar lo que necesita hacer</p>
            </div>
            <div class="eval-arrow">&#x2192;</div>
            <div class="eval-step">
              <span class="eval-num">2</span>
              <strong>Genera confusi&#xF3;n</strong>
              <p>El usuario no sabe qu&#xE9; pas&#xF3; ni qu&#xE9; debe hacer</p>
            </div>
            <div class="eval-arrow">&#x2192;</div>
            <div class="eval-step">
              <span class="eval-num">3</span>
              <strong>Aumenta el esfuerzo</strong>
              <p>La tarea exige m&#xE1;s pasos o tiempo del necesario</p>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide ID-2: Escala de severidad -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Identificaci&#xF3;n de Problemas</p>
          <h2>Escala de severidad de Nielsen</h2>
          <p>Asignar severidad permite <strong>priorizar</strong> qu&#xE9; problemas corregir primero y con qu&#xE9; urgencia.</p>
          <div class="severity-cards">
            <div class="sev-card" style="border-left:4px solid #e2e8f0;">
              <span class="sev-badge" style="background:#cbd5e1;color:#475569;">0</span>
              <strong>Sin problema</strong>
              <p>No es un problema de usabilidad real</p>
            </div>
            <div class="sev-card sev-1">
              <span class="sev-badge">1</span>
              <strong>Cosm&#xE9;tico</strong>
              <p>Solo corregir si queda tiempo disponible</p>
            </div>
            <div class="sev-card sev-2">
              <span class="sev-badge">2</span>
              <strong>Menor</strong>
              <p>Baja prioridad &#x2014; puede esperar</p>
            </div>
            <div class="sev-card sev-3">
              <span class="sev-badge">3</span>
              <strong>Mayor</strong>
              <p>Alta prioridad &#x2014; corregir en la pr&#xF3;xima iteraci&#xF3;n</p>
            </div>
            <div class="sev-card sev-4">
              <span class="sev-badge">4</span>
              <strong>Catastr&#xF3;fico</strong>
              <p>Cr&#xED;tico &#x2014; debe corregirse antes de lanzar</p>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide ID-3: Demo — Etiquetas técnicas -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Identificaci&#xF3;n de Problemas</p>
          <h2>Ejemplo: Lenguaje del sistema vs. lenguaje del usuario</h2>
          <p>&#xBF;Cu&#xE1;l viola una heur&#xED;stica? Analiza las etiquetas antes de revelar.</p>
          <div class="demo-pair">
            <div class="demo-box" data-type="bad">
              <div class="demo-label bad-label demo-label--hidden">&#x274C; H2 violada &#x2014; lenguaje t&#xE9;cnico</div>
              <div class="demo-card">
                <p class="demo-card-title">Crear cuenta</p>
                <div class="proto-form">
                  <div class="proto-field" style="font-family:monospace;font-size:0.8rem;color:#7c3aed;">usr_email</div>
                  <div class="proto-field" style="font-family:monospace;font-size:0.8rem;color:#7c3aed;">pwd_hash</div>
                  <div class="proto-field" style="font-family:monospace;font-size:0.8rem;color:#7c3aed;">conf_pwd_hash</div>
                  <div class="proto-field" style="font-family:monospace;font-size:0.8rem;color:#7c3aed;">usr_birthdate_ISO</div>
                  <button class="demo-btn-bad" type="button" style="width:100%;margin-top:0.5rem;">submit()</button>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
            <div class="demo-box" data-type="good">
              <div class="demo-label good-label demo-label--hidden">&#x2705; H2 cumplida &#x2014; lenguaje del usuario</div>
              <div class="demo-card">
                <p class="demo-card-title">Crear cuenta</p>
                <div class="proto-form">
                  <div class="proto-field">Correo electr&#xF3;nico</div>
                  <div class="proto-field">Contrase&#xF1;a</div>
                  <div class="proto-field">Confirmar contrase&#xF1;a</div>
                  <div class="proto-field">Fecha de nacimiento</div>
                  <button class="demo-btn-good" type="button" style="width:100%;margin-top:0.5rem;">Crear cuenta</button>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide ID-4: Demo — Acción destructiva sin confirmación -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Identificaci&#xF3;n de Problemas</p>
          <h2>Ejemplo: Acci&#xF3;n destructiva sin confirmaci&#xF3;n</h2>
          <p>&#xBF;Cu&#xE1;l viola una heur&#xED;stica? Observa qu&#xE9; ocurre al intentar eliminar un archivo.</p>
          <div class="demo-pair">
            <div class="demo-box" data-type="bad">
              <div class="demo-label bad-label demo-label--hidden">&#x274C; H5 violada &#x2014; sin prevenci&#xF3;n de errores</div>
              <div class="demo-card">
                <p class="demo-card-title">Mis archivos</p>
                <div class="id-file-list">
                  <div class="id-file-row">
                    <span class="id-file-icon">&#x1F4C4;</span>
                    <span class="id-file-name">Informe_final.pdf</span>
                    <button class="demo-btn-bad id-del-btn" type="button">&#x1F5D1; Eliminar</button>
                  </div>
                  <div class="id-file-row">
                    <span class="id-file-icon">&#x1F4C4;</span>
                    <span class="id-file-name">Presupuesto_2024.xlsx</span>
                    <button class="demo-btn-bad id-del-btn" type="button">&#x1F5D1; Eliminar</button>
                  </div>
                </div>
                <p class="demo-hint" style="margin-top:0.5rem;">Sin confirmaci&#xF3;n &#x2014; el archivo desaparece al instante</p>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
            <div class="demo-box" data-type="good">
              <div class="demo-label good-label demo-label--hidden">&#x2705; H5 cumplida &#x2014; confirmaci&#xF3;n antes de eliminar</div>
              <div class="demo-card">
                <p class="demo-card-title">Mis archivos</p>
                <div class="id-file-list">
                  <div class="id-file-row">
                    <span class="id-file-icon">&#x1F4C4;</span>
                    <span class="id-file-name">Informe_final.pdf</span>
                    <button class="demo-btn-good id-del-confirm-btn" type="button">&#x1F5D1; Eliminar</button>
                  </div>
                  <div class="id-file-row">
                    <span class="id-file-icon">&#x1F4C4;</span>
                    <span class="id-file-name">Presupuesto_2024.xlsx</span>
                    <button class="demo-btn-good id-del-confirm-btn" type="button">&#x1F5D1; Eliminar</button>
                  </div>
                </div>
                <div class="id-confirm-dialog" style="display:none;">
                  <p style="margin:0 0 0.5rem;font-size:0.85rem;font-weight:600;">&#xBF;Eliminar este archivo?</p>
                  <p style="margin:0 0 0.75rem;font-size:0.8rem;color:#475569;">Esta acci&#xF3;n no se puede deshacer.</p>
                  <div style="display:flex;gap:0.5rem;">
                    <button class="demo-btn-bad id-confirm-yes" type="button" style="flex:1;">S&#xED;, eliminar</button>
                    <button class="demo-btn-good id-confirm-no" type="button" style="flex:1;">Cancelar</button>
                  </div>
                </div>
                <p class="demo-hint id-confirm-hint" style="margin-top:0.5rem;">Haz clic en Eliminar para ver el flujo</p>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide RM-1: ¿Qué es retroalimentación estructurada? -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Retroalimentaci&#xF3;n y Mejoras</p>
          <h2>Retroalimentar no es opinar</h2>
          <p>Una opini&#xF3;n dice qu&#xE9; no le gust&#xF3;. La retroalimentaci&#xF3;n estructurada dice <strong>qu&#xE9; fall&#xF3;, por qu&#xE9; importa y c&#xF3;mo corregirlo</strong>.</p>
          <div class="eval-flow">
            <div class="eval-step">
              <span class="eval-num">1</span>
              <strong>Describir</strong>
              <p>&#xBF;Qu&#xE9; problema espec&#xED;fico existe en la interfaz?</p>
            </div>
            <div class="eval-arrow">&#x2192;</div>
            <div class="eval-step">
              <span class="eval-num">2</span>
              <strong>Conectar</strong>
              <p>&#xBF;Qu&#xE9; heur&#xED;stica o criterio viola?</p>
            </div>
            <div class="eval-arrow">&#x2192;</div>
            <div class="eval-step">
              <span class="eval-num">3</span>
              <strong>Impacto</strong>
              <p>&#xBF;Qu&#xE9; le ocurre al usuario cuando lo encuentra?</p>
            </div>
            <div class="eval-arrow">&#x2192;</div>
            <div class="eval-step">
              <span class="eval-num">4</span>
              <strong>Proponer</strong>
              <p>&#xBF;Qu&#xE9; cambio concreto resuelve el problema?</p>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide RM-2: Cómo documentar un hallazgo -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Retroalimentaci&#xF3;n y Mejoras</p>
          <h2>Ejemplo de hallazgo documentado</h2>
          <p>As&#xED; se ve un hallazgo bien registrado &#x2014; cada fila responde una de las 4 preguntas.</p>
          <div class="feedback-template">
            <div class="fb-row">
              <span class="fb-tag fb-tag--problem">Problema</span>
              <p>Al hacer clic en &quot;Enviar&quot;, el bot&#xF3;n no cambia de estado ni aparece ninguna se&#xF1;al de que la acci&#xF3;n fue recibida por el sistema.</p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--heuristic">Heur&#xED;stica</span>
              <p><strong>H1 &#x2014; Visibilidad del estado del sistema</strong>: el sistema debe mantener informado al usuario sobre lo que ocurre, en un tiempo razonable.</p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--impact">Impacto</span>
              <p>El usuario hace clic varias veces pensando que no funcion&#xF3;, lo que puede generar env&#xED;os duplicados o abandono del formulario. Severidad: <strong>3 &#x2014; Mayor</strong>.</p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--proposal">Propuesta</span>
              <p>Deshabilitar el bot&#xF3;n al primer clic, mostrar un spinner de carga y reemplazarlo por un mensaje de confirmaci&#xF3;n (&quot;&#x2713; Enviado&quot;) al completarse la operaci&#xF3;n.</p>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide RM-3: Demo — feedback vago vs. estructurado -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Retroalimentaci&#xF3;n y Mejoras</p>
          <h2>Ejemplo: Feedback vago vs. estructurado</h2>
          <p>Ambos comentan el <em>mismo</em> problema. &#xBF;Cu&#xE1;l le sirve al equipo de dise&#xF1;o para actuar?</p>
          <div class="demo-pair">
            <div class="demo-box" data-type="bad">
              <div class="demo-label bad-label demo-label--hidden">&#x274C; No accionable</div>
              <div class="demo-card">
                <p class="demo-card-title">Comentarios del evaluador</p>
                <div class="rm-feedback-list">
                  <div class="rm-comment rm-comment--bad">&quot;El men&#xFA; est&#xE1; mal&quot;</div>
                  <div class="rm-comment rm-comment--bad">&quot;Hay cosas confusas en la pantalla&quot;</div>
                  <div class="rm-comment rm-comment--bad">&quot;No me gusta el flujo de registro&quot;</div>
                  <div class="rm-comment rm-comment--bad">&quot;El bot&#xF3;n no funciona bien&quot;</div>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
            <div class="demo-box" data-type="good">
              <div class="demo-label good-label demo-label--hidden">&#x2705; Accionable</div>
              <div class="demo-card">
                <p class="demo-card-title">Comentarios del evaluador</p>
                <div class="rm-feedback-list">
                  <div class="rm-comment rm-comment--good">
                    <span class="rm-tag rm-tag--problem">Problema</span>
                    El bot&#xF3;n &quot;Continuar&quot; desaparece en pantallas peque&#xF1;as
                  </div>
                  <div class="rm-comment rm-comment--good">
                    <span class="rm-tag rm-tag--heuristic">H4</span>
                    Consistencia &#x2014; 3 pantallas usan estilos de bot&#xF3;n distintos
                  </div>
                  <div class="rm-comment rm-comment--good">
                    <span class="rm-tag rm-tag--impact">Impacto</span>
                    Sev. 3 &#x2014; Usuario no puede avanzar en m&#xF3;vil
                  </div>
                  <div class="rm-comment rm-comment--good">
                    <span class="rm-tag rm-tag--proposal">Mejora</span>
                    Fijar el bot&#xF3;n al pie de pantalla con posici&#xF3;n fija
                  </div>
                </div>
              </div>
              <button class="demo-reveal-color-btn" type="button"><svg xmlns="http://www.w3.org/2000/svg" width="15" height="15" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></svg> Revelar evaluaci&#xF3;n</button>
            </div>
          </div>
        </div>
      </section>

      <!-- Slide RM-4: Cómo priorizar las mejoras -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Retroalimentaci&#xF3;n y Mejoras</p>
          <h2>&#xBF;Por d&#xF3;nde empezar a mejorar?</h2>
          <p>No todos los problemas se resuelven al mismo tiempo. Prioriza seg&#xFA;n <strong>severidad e impacto en la tarea</strong>.</p>
          <div class="rm-priority-grid">
            <div class="rm-priority-card rm-p--now">
              <p class="rm-p-label">Corregir ahora</p>
              <p class="rm-p-badge">Sev. 3&#x2013;4</p>
              <ul class="analisis-list">
                <li>Bloquea la tarea del usuario</li>
                <li>Ocurre en flujos principales</li>
                <li>Genera datos incorrectos</li>
              </ul>
            </div>
            <div class="rm-priority-card rm-p--next">
              <p class="rm-p-label">Pr&#xF3;xima iteraci&#xF3;n</p>
              <p class="rm-p-badge">Sev. 2</p>
              <ul class="analisis-list">
                <li>Ralentiza al usuario pero no lo bloquea</li>
                <li>Aparece en flujos secundarios</li>
                <li>Causa confusi&#xF3;n puntual</li>
              </ul>
            </div>
            <div class="rm-priority-card rm-p--later">
              <p class="rm-p-label">Si hay tiempo</p>
              <p class="rm-p-badge">Sev. 0&#x2013;1</p>
              <ul class="analisis-list">
                <li>Detalles visuales o est&#xE9;ticos</li>
                <li>No afecta la tarea principal</li>
                <li>Mejora marginal de experiencia</li>
              </ul>
            </div>
          </div>
        </div>
      </section>

      <!-- ACT-1: Observa el prototipo -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Actividad Pr&#xE1;ctica</p>
          <h2>Observa este prototipo</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.75rem;">Hay <strong>5 problemas de usabilidad</strong> marcados con <span class="act-nbadge" style="display:inline-flex;vertical-align:middle;">N</span>. Escribe en el chat qu&#xE9; falla en cada n&#xFA;mero &#x2014; avanza cuando hayas anotado tus respuestas.</p>
          <div style="display:flex;justify-content:center;">
            <div class="act-mockup act-mockup--wide">
              <div class="act-bar">
                <span class="act-dot"></span><span class="act-dot"></span><span class="act-dot"></span>
                <span class="act-url">miapp.cl / tareas / nueva</span>
              </div>
              <div class="act-body act-body--wide">
                <p class="act-form-title">Crear nueva tarea</p>
                <div class="act-body-cols">
                  <div class="act-body-col">
                    <div class="act-field">
                      <label class="act-lbl">T&#xED;tulo</label>
                      <div class="act-inp">Reuni&#xF3;n de equipo</div>
                      <span class="act-badge">1</span>
                    </div>
                    <div class="act-field">
                      <label class="act-lbl">Due date</label>
                      <div class="act-inp act-inp--ph">dd/mm/aaaa</div>
                      <span class="act-badge">2</span>
                    </div>
                    <div class="act-field">
                      <label class="act-lbl">Descripci&#xF3;n</label>
                      <div class="act-inp act-inp--ph act-inp--tall">Escribe aqu&#xED;&#x2026;</div>
                    </div>
                  </div>
                  <div class="act-body-col">
                    <div class="act-field act-field--err">
                      <div class="act-err">TypeError: Cannot read properties of null (reading &apos;id&apos;)</div>
                      <span class="act-badge">3</span>
                    </div>
                    <div class="act-field">
                      <label class="act-lbl">Responsable</label>
                      <div class="act-inp act-inp--ph">Seleccionar&#x2026;</div>
                    </div>
                    <div class="act-field act-field--btns" style="margin-top:0.3rem;">
                      <button class="act-btn-primary" type="button">Cancelar</button>
                      <button class="act-btn-secondary" type="button">Guardar</button>
                      <span class="act-badge">4</span>
                    </div>
                    <div class="act-field act-field--del" style="margin-top:0.2rem;">
                      <button class="act-btn-primary act-btn-full" type="button">Eliminar tarea</button>
                      <span class="act-badge">5</span>
                    </div>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </div>
      </section>

      <!-- ACT-2: Paso 1 — ¿Es un problema? -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Actividad Pr&#xE1;ctica &#xB7; Paso 1</p>
          <h2>&#xBF;Cu&#xE1;ndo es un problema de usabilidad?</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.75rem;">Para cada hallazgo, &#xBF;impide la tarea, genera confusi&#xF3;n o aumenta el esfuerzo? Discute antes de revelar.</p>
          <div class="act-step-list">

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">1</span> Campo requerido sin indicar
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--no">&#x2717; Impide la tarea</span>
                <span class="act-cond act-cond--yes">&#x2713; Genera confusi&#xF3;n &#x2014; el usuario no sabe qu&#xE9; campos son obligatorios</span>
                <span class="act-cond act-cond--yes">&#x2713; Aumenta el esfuerzo &#x2014; debe intentar enviar para descubrirlo</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">2</span> Etiqueta &quot;Due date&quot; en ingl&#xE9;s
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--no">&#x2717; Impide la tarea</span>
                <span class="act-cond act-cond--yes">&#x2713; Genera confusi&#xF3;n &#x2014; mezcla de idiomas desorienta al usuario</span>
                <span class="act-cond act-cond--yes">&#x2713; Aumenta el esfuerzo &#x2014; el usuario debe inferir qu&#xE9; significa el campo</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">3</span> Mensaje de error t&#xE9;cnico
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--yes">&#x2713; Impide la tarea &#x2014; el usuario no puede recuperarse sin ayuda externa</span>
                <span class="act-cond act-cond--yes">&#x2713; Genera confusi&#xF3;n &#x2014; el mensaje no explica qu&#xE9; sali&#xF3; mal ni c&#xF3;mo resolverlo</span>
                <span class="act-cond act-cond--yes">&#x2713; Aumenta el esfuerzo &#x2014; debe buscar soluci&#xF3;n por su cuenta</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">4</span> Jerarqu&#xED;a de botones invertida
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--yes">&#x2713; Impide la tarea &#x2014; puede cancelar el trabajo por error al hacer clic en el bot&#xF3;n equivocado</span>
                <span class="act-cond act-cond--yes">&#x2713; Genera confusi&#xF3;n &#x2014; la jerarqu&#xED;a visual no corresponde a la acci&#xF3;n principal</span>
                <span class="act-cond act-cond--yes">&#x2713; Aumenta el esfuerzo &#x2014; el usuario debe detenerse a leer antes de hacer clic</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">5</span> Acci&#xF3;n destructiva sin distinci&#xF3;n
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--yes">&#x2713; Impide la tarea &#x2014; si elimina por error, pierde todo el trabajo realizado</span>
                <span class="act-cond act-cond--yes">&#x2713; Genera confusi&#xF3;n &#x2014; no hay advertencia sobre la gravedad de la acci&#xF3;n</span>
                <span class="act-cond act-cond--yes">&#x2713; Aumenta el esfuerzo &#x2014; si no hay deshacer, debe recrear la tarea desde cero</span>
              </div>
            </div>

          </div>
        </div>
      </section>

      <!-- ACT-3: Paso 2 — Severidad -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Actividad Pr&#xE1;ctica &#xB7; Paso 2</p>
          <h2>&#xBF;Qu&#xE9; severidad tiene cada problema?</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.75rem;">Usa la escala de Nielsen 0&#x2013;4. Asigna un nivel a cada problema antes de revelar.</p>
          <div class="act-step-list">

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">1</span> Campo requerido sin indicar
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--2">2 &#x2014; Menor</span>
                <span class="act-sev-text">No bloquea al usuario, pero genera un paso extra frustrante al intentar enviar. Corregir en la pr&#xF3;xima iteraci&#xF3;n.</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">2</span> Etiqueta &quot;Due date&quot; en ingl&#xE9;s
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--1">1 &#x2014; Cosm&#xE9;tico</span>
                <span class="act-sev-text">El usuario puede inferir el campo. No afecta la funcionalidad. Corregir si queda tiempo.</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">3</span> Mensaje de error t&#xE9;cnico
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--3">3 &#x2014; Mayor</span>
                <span class="act-sev-text">Impide la recuperaci&#xF3;n. El usuario queda bloqueado sin instrucciones claras. Alta prioridad.</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">4</span> Jerarqu&#xED;a de botones invertida
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--3">3 &#x2014; Mayor</span>
                <span class="act-sev-text">El usuario puede cancelar trabajo sin querer. Viola una convenci&#xF3;n ampliamente conocida. Alta prioridad.</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">5</span> Acci&#xF3;n destructiva sin distinci&#xF3;n
                <span class="act-chevron">&#x25B8;</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--4">4 &#x2014; Catastr&#xF3;fico</span>
                <span class="act-sev-text">Puede provocar p&#xE9;rdida irreversible de datos con un clic. Corregir antes de cualquier lanzamiento.</span>
              </div>
            </div>

          </div>
        </div>
      </section>

      <!-- ACT-4: Paso 3 — Retroalimentación estructurada -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Actividad Pr&#xE1;ctica &#xB7; Paso 3</p>
          <h2>Documenta el hallazgo m&#xE1;s grave</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.5rem;">Tomemos el <span class="act-nbadge" style="display:inline-flex;vertical-align:middle;">5</span> y construyamos juntos la retroalimentaci&#xF3;n completa, fila por fila.</p>
          <div class="feedback-template">
            <div class="fb-row">
              <span class="fb-tag fb-tag--problem">Problema</span>
              <p>El bot&#xF3;n &quot;Eliminar tarea&quot; tiene el mismo tama&#xF1;o, color y posici&#xF3;n que &quot;Cancelar&quot; y &quot;Guardar&quot;, sin ninguna separaci&#xF3;n visual ni advertencia previa.</p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--heuristic">Heur&#xED;stica</span>
              <p><strong>H5 &#x2014; Prevenci&#xF3;n de errores:</strong> el dise&#xF1;o debe prevenir que se produzca el problema antes de que ocurra, no solo informar despu&#xE9;s.</p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--impact">Impacto</span>
              <p>El usuario puede eliminar una tarea cr&#xED;tica con un solo clic accidental. Si no existe funci&#xF3;n de deshacer, la p&#xE9;rdida es irreversible. <strong>Severidad: 4 &#x2014; Catastr&#xF3;fico.</strong></p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--proposal">Propuesta</span>
              <p>Separar el bot&#xF3;n del resto de acciones, colorearlo en rojo con &#xED;cono &#x26A0;, y requerir un di&#xE1;logo de confirmaci&#xF3;n: <em>&quot;&#xBF;Eliminar tarea? Esta acci&#xF3;n no se puede deshacer.&quot;</em></p>
            </div>
          </div>
        </div>
      </section>

      <!-- ACT-5: Paso 4 — Priorizar -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Actividad Pr&#xE1;ctica &#xB7; Paso 4</p>
          <h2>Prioriza las mejoras</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.75rem;">Con la severidad de cada problema asignada, &#xBF;en qu&#xE9; orden las abordar&#xED;as? &#xBF;Coincide con tu propuesta anterior?</p>
          <div class="rm-priority-grid">
            <div class="rm-priority-card rm-p--now">
              <p class="rm-p-label">Corregir ahora</p>
              <p class="rm-p-badge">Sev. 3 &#x2013; 4</p>
              <div class="act-chip-list">
                <span class="act-chip act-chip--4"><span class="act-nbadge act-nbadge--sm">5</span> Eliminar sin distinci&#xF3;n <em>&#xB7; Sev. 4</em></span>
                <span class="act-chip act-chip--3"><span class="act-nbadge act-nbadge--sm">3</span> Error t&#xE9;cnico <em>&#xB7; Sev. 3</em></span>
                <span class="act-chip act-chip--3"><span class="act-nbadge act-nbadge--sm">4</span> Botones invertidos <em>&#xB7; Sev. 3</em></span>
              </div>
            </div>
            <div class="rm-priority-card rm-p--next">
              <p class="rm-p-label">Pr&#xF3;xima iteraci&#xF3;n</p>
              <p class="rm-p-badge">Sev. 2</p>
              <div class="act-chip-list">
                <span class="act-chip act-chip--2"><span class="act-nbadge act-nbadge--sm">1</span> Campo sin marcar <em>&#xB7; Sev. 2</em></span>
              </div>
            </div>
            <div class="rm-priority-card rm-p--later">
              <p class="rm-p-label">Si hay tiempo</p>
              <p class="rm-p-badge">Sev. 1</p>
              <div class="act-chip-list">
                <span class="act-chip act-chip--1"><span class="act-nbadge act-nbadge--sm">2</span> &quot;Due date&quot; en ingl&#xE9;s <em>&#xB7; Sev. 1</em></span>
              </div>
            </div>
          </div>
        </div>
      </section>

      <!-- ══ ACTIVIDAD B: Reserva de vuelo ══ -->

      <!-- B-ACT-1: Observa el prototipo -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Segunda Actividad Pr&#xE1;ctica</p>
          <h2>Encuentra los problemas</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.75rem;">Analiza esta pantalla de reserva de vuelo. Hay <strong>5 problemas</strong> marcados con <span class="act-nbadge" style="display:inline-flex;vertical-align:middle;">N</span>. Escribe en el chat qu&#xE9; falla en cada n&#xFA;mero &#x2014; aplica lo aprendido antes de avanzar.</p>
          <div style="display:flex;justify-content:center;">
            <div class="fly-app">

              <!-- Header -->
              <div class="fly-header">
                <span class="fly-logo">&#x2708; AeroConnect</span>
                <div class="fly-nav">
                  <span class="fly-nav-item fly-nav-item--active">Vuelos</span>
                  <span class="fly-nav-item">Hoteles</span>
                  <span class="fly-nav-item">Mi cuenta</span>
                </div>
              </div>

              <!-- Hero -->
              <div class="fly-hero">
                <p class="fly-hero-title">Busca y reserva tu vuelo</p>
                <div class="fly-card">

                  <!-- Problema 1: OW / RT (H2) -->
                  <div class="fly-field" style="position:relative;">
                    <label class="fly-lbl">Tipo de vuelo</label>
                    <div class="fly-type-row">
                      <button class="fly-type-btn fly-type--active" type="button">OW</button>
                      <button class="fly-type-btn" type="button">RT</button>
                      <button class="fly-type-btn" type="button">Multi-city</button>
                    </div>
                    <!-- <span class="act-badge" style="top:-6px;right:-6px;">1</span> -->
                  </div>

                  <!-- Origen / Destino -->
                  <div class="fly-route-row">
                    <!-- Problema 2: placeholder IATA (H6) -->
                    <div class="fly-field" style="position:relative;">
                      <label class="fly-lbl">Origen</label>
                      <div class="fly-inp fly-inp--ph">IATA Code</div>
                      <!-- <span class="act-badge" style="top:-6px;right:-6px;">2</span> -->
                    </div>
                    <div class="fly-swap">&#x21C4;</div>
                    <div class="fly-field">
                      <label class="fly-lbl">Destino</label>
                      <div class="fly-inp fly-inp--ph">IATA Code</div>
                    </div>
                  </div>

                  <!-- Fechas -->
                  <div class="fly-dates-row">
                    <div class="fly-field">
                      <label class="fly-lbl">Salida</label>
                      <div class="fly-inp fly-inp--ph">&#x1F4C5; DD/MM/AAAA</div>
                    </div>
                    <div class="fly-field">
                      <label class="fly-lbl">Regreso</label>
                      <div class="fly-inp fly-inp--ph">&#x1F4C5; DD/MM/AAAA</div>
                    </div>
                  </div>

                  <!-- Pasajeros -->
                  <div class="fly-pax-row">
                    <div class="fly-pax-group">
                      <label class="fly-lbl">Adultos</label>
                      <div class="fly-pax-ctrl">
                        <button class="fly-pax-btn" type="button">&#x2212;</button>
                        <span>1</span>
                        <button class="fly-pax-btn" type="button">+</button>
                      </div>
                    </div>
                    <!-- Problema 5: controles inconsistentes (H4) -->
                    <div class="fly-pax-group" style="position:relative;">
                      <label class="fly-lbl">Ni&#xF1;os</label>
                      <div class="fly-pax-ctrl">
                        <button class="fly-pax-btn fly-pax-btn--arrow" type="button">&#x25B2;</button>
                        <span>0</span>
                        <button class="fly-pax-btn fly-pax-btn--arrow" type="button">&#x25BC;</button>
                      </div>
                      <!-- <span class="act-badge" style="top:-6px;right:-6px;">5</span -->&gt;
                    </div>
                    <div class="fly-pax-group">
                      <label class="fly-lbl">Cabina</label>
                      <div class="fly-inp" style="font-size:0.78rem;">Econ&#xF3;mica &#x25BE;</div>
                    </div>
                  </div>

                  <!-- Problema 4: error técnico (H9) -->
                  <div style="position:relative;">
                    <div class="fly-error">Err: INVALID_DATE_RANGE (422) &#x2014; departure_date cannot precede current_timestamp</div>
                  <!--   <span class="act-badge" style="top:-6px;right:-6px;">4</span> -->
                  </div>

                  <!-- Problema 3: mismo estilo Limpiar = Buscar (H5) -->
                  <div class="fly-actions" style="position:relative;">
                    <button class="fly-btn-primary" type="button">Limpiar formulario</button>
                    <button class="fly-btn-primary fly-btn-cta" type="button">Buscar vuelos &#x2192;</button>
                    <!-- <span class="act-badge" style="top:-6px;left:calc(50% - 9px);">3</span> -->
                  </div>

                </div>
              </div>
            </div>
          </div>
        </div>
      </section>

      <!-- B-ACT-2: Paso 1 — ¿Es un problema? 
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Segunda Actividad · Paso 1</p>
          <h2>¿Cuándo es un problema de usabilidad?</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.75rem;">Para cada hallazgo, ¿impide la tarea, genera confusión o aumenta el esfuerzo? Revela cuando estés listo.</p>
          <div class="act-step-list">

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">1</span> Botones "OW" y "RT" como etiquetas
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--no">✗ Impide la tarea</span>
                <span class="act-cond act-cond--yes">✓ Genera confusión — el usuario no sabe que OW = solo ida y RT = ida y vuelta</span>
                <span class="act-cond act-cond--yes">✓ Aumenta el esfuerzo — debe detener el flujo para inferir qué significa cada opción</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">2</span> Placeholder "IATA Code" en campo Origen
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--no">✗ Impide la tarea</span>
                <span class="act-cond act-cond--yes">✓ Genera confusión — el usuario no sabe si debe escribir el código (SCL) o el nombre de la ciudad (Santiago)</span>
                <span class="act-cond act-cond--yes">✓ Aumenta el esfuerzo — debe buscar el código IATA externamente si no lo conoce</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">3</span> "Limpiar formulario" = "Buscar vuelos" en apariencia
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--yes">✓ Impide la tarea — un clic accidental borra todos los datos ingresados y obliga a empezar de cero</span>
                <span class="act-cond act-cond--yes">✓ Genera confusión — ambos botones tienen idéntico peso visual, sin distinción de peligro</span>
                <span class="act-cond act-cond--yes">✓ Aumenta el esfuerzo — el usuario debe rellenar el formulario completo si se equivoca</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">4</span> Mensaje de error técnico
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--yes">✓ Impide la tarea — el usuario no puede corregir el error sin entender qué significa</span>
                <span class="act-cond act-cond--yes">✓ Genera confusión — "departure_date cannot precede current_timestamp" no es lenguaje del usuario</span>
                <span class="act-cond act-cond--yes">✓ Aumenta el esfuerzo — debe interpretar código técnico para saber qué campo corregir</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">5</span> Controles de pasajeros inconsistentes
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer">
                <span class="act-cond act-cond--no">✗ Impide la tarea</span>
                <span class="act-cond act-cond--yes">✓ Genera confusión — "Adultos" usa − / + mientras "Niños" usa ▲ / ▼ en orden inverso</span>
                <span class="act-cond act-cond--yes">✓ Aumenta el esfuerzo — el usuario debe verificar dos veces qué botón aumenta y cuál disminuye</span>
              </div>
            </div>

          </div>
        </div>
      </section>

      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Segunda Actividad · Paso 2</p>
          <h2>¿Qué severidad tiene cada problema?</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.75rem;">Asigna un nivel 0–4 a cada hallazgo antes de revelar. ¿Coincide con tu análisis anterior?</p>
          <div class="act-step-list">

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">1</span> Botones "OW" / "RT"
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--2">2 — Menor</span>
                <span class="act-sev-text">El usuario puede intuir el significado con algo de esfuerzo. Afecta la primera impresión pero no bloquea el flujo.</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">2</span> Placeholder "IATA Code"
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--2">2 — Menor</span>
                <span class="act-sev-text">Genera incertidumbre real sobre qué dato ingresar. Puede causar búsquedas fallidas hasta que el usuario descubra el formato correcto.</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">3</span> Limpiar = Buscar en apariencia
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--4">4 — Catastrófico</span>
                <span class="act-sev-text">Pérdida irreversible de todos los datos del formulario con un clic. Sin confirmación previa. Debe corregirse antes de cualquier lanzamiento.</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">4</span> Mensaje de error técnico
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--3">3 — Mayor</span>
                <span class="act-sev-text">Bloquea la recuperación del error. El usuario no sabe qué campo corregir ni cómo. Alta prioridad de corrección.</span>
              </div>
            </div>

            <div class="act-step-item">
              <button class="act-reveal-btn" type="button">
                <span class="act-nbadge">5</span> Controles inconsistentes
                <span class="act-chevron">▸</span>
              </button>
              <div class="act-answer act-answer--row">
                <span class="act-sev-pill act-sev--1">1 — Cosmético</span>
                <span class="act-sev-text">Confunde brevemente pero el usuario puede operar ambos controles. No bloquea la tarea. Corregir si queda tiempo.</span>
              </div>
            </div>

          </div>
        </div>
      </section>

      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Segunda Actividad · Paso 3</p>
          <h2>Documenta el hallazgo más grave</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.5rem;">Tomemos el <span class="act-nbadge" style="display:inline-flex;vertical-align:middle;">3</span> y completemos juntos la retroalimentación estructurada.</p>
          <div class="feedback-template">
            <div class="fb-row">
              <span class="fb-tag fb-tag--problem">Problema</span>
              <p>El botón "Limpiar formulario" y el botón "Buscar vuelos" tienen idéntico tamaño, color azul y posición contigua, sin ninguna distinción visual que advierta sobre la destrucción de datos.</p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--heuristic">Heurística</span>
              <p><strong>H5 — Prevención de errores:</strong> es mejor diseñar el sistema para que los errores no ocurran, en lugar de depender solo de mensajes de confirmación posteriores.</p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--impact">Impacto</span>
              <p>El usuario puede perder todos los datos del formulario (origen, destino, fechas, pasajeros) con un clic accidental. No existe confirmación previa. <strong>Severidad: 4 — Catastrófico.</strong></p>
            </div>
            <div class="fb-row">
              <span class="fb-tag fb-tag--proposal">Propuesta</span>
              <p>Cambiar el botón a estilo secundario (borde, fondo blanco), añadir ícono ⚠, separarlo del botón principal, y mostrar un diálogo de confirmación: <em>"¿Limpiar todo? Se borrarán origen, destino y fechas."</em></p>
            </div>
          </div>
        </div>
      </section>

      <!-- B-ACT-5: Paso 4 — Priorizar 
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Segunda Actividad · Paso 4</p>
          <h2>Prioriza las mejoras</h2>
          <p style="color:#475569;font-size:0.88rem;margin-bottom:0.75rem;">Con la severidad asignada, ordena los hallazgos. ¿Qué entregarías primero al equipo de diseño?</p>
          <div class="rm-priority-grid">
            <div class="rm-priority-card rm-p--now">
              <p class="rm-p-label">Corregir ahora</p>
              <p class="rm-p-badge">Sev. 3 – 4</p>
              <div class="act-chip-list">
                <span class="act-chip act-chip--4"><span class="act-nbadge act-nbadge--sm">3</span> Limpiar = Buscar <em>· Sev. 4</em></span>
                <span class="act-chip act-chip--3"><span class="act-nbadge act-nbadge--sm">4</span> Error técnico <em>· Sev. 3</em></span>
              </div>
            </div>
            <div class="rm-priority-card rm-p--next">
              <p class="rm-p-label">Próxima iteración</p>
              <p class="rm-p-badge">Sev. 2</p>
              <div class="act-chip-list">
                <span class="act-chip act-chip--2"><span class="act-nbadge act-nbadge--sm">1</span> OW / RT jargon <em>· Sev. 2</em></span>
                <span class="act-chip act-chip--2"><span class="act-nbadge act-nbadge--sm">2</span> IATA placeholder <em>· Sev. 2</em></span>
              </div>
            </div>
            <div class="rm-priority-card rm-p--later">
              <p class="rm-p-label">Si hay tiempo</p>
              <p class="rm-p-badge">Sev. 1</p>
              <div class="act-chip-list">
                <span class="act-chip act-chip--1"><span class="act-nbadge act-nbadge--sm">5</span> Controles inconsistentes <em>· Sev. 1</em></span>
              </div>
            </div>
          </div>
        </div>
      </section>
        -->
      <!-- Slide FINAL: Conclusiones participativas -->
      <section class="slide" aria-hidden="true">
        <div class="slide-content">
          <p class="eyebrow">Cierre de Sesi&#xF3;n</p>
          <h2>&#xBF;Qu&#xE9; nos llevamos hoy?</h2>
          <p class="semaforo-instruccion">Haz clic en la tarjeta para enfocarla &#xB7; el docente suma cada participaci&#xF3;n con el bot&#xF3;n</p>
          <div class="conclu-grid" id="concluGrid">

            <div class="conclu-card" data-conclu="blue">
              <div class="conclu-top">
                <span class="conclu-icon">&#x1F4A1;</span>
                <span class="conclu-tag conclu-tag--blue">01 &#xB7; Aprendizaje</span>
              </div>
              <strong class="conclu-prompt">&#xBF;Qu&#xE9; aprendiste hoy?</strong>
              <p class="conclu-sub">Una cosa concreta que no sab&#xED;as antes de esta sesi&#xF3;n</p>
              <div class="conclu-actions">
                <button class="conclu-count-btn" type="button">
                  <span class="conclu-count-icon">&#x270B;</span>
                  <span class="conclu-count-n">0</span>
                  <span class="conclu-count-label">compartieron</span>
                </button>
                <button class="conclu-reset-btn" type="button" title="Reiniciar">&#x21BA;</button>
              </div>
            </div>

            <div class="conclu-card" data-conclu="amber">
              <div class="conclu-top">
                <span class="conclu-icon">&#x1F50D;</span>
                <span class="conclu-tag conclu-tag--amber">02 &#xB7; Investigaci&#xF3;n</span>
              </div>
              <strong class="conclu-prompt">&#xBF;Qu&#xE9; quieres investigar m&#xE1;s?</strong>
              <p class="conclu-sub">Una duda o tema que te qued&#xF3; pendiente de explorar</p>
              <div class="conclu-actions">
                <button class="conclu-count-btn" type="button">
                  <span class="conclu-count-icon">&#x270B;</span>
                  <span class="conclu-count-n">0</span>
                  <span class="conclu-count-label">compartieron</span>
                </button>
                <button class="conclu-reset-btn" type="button" title="Reiniciar">&#x21BA;</button>
              </div>
            </div>

            <div class="conclu-card" data-conclu="green">
              <div class="conclu-top">
                <span class="conclu-icon">&#x1F3AF;</span>
                <span class="conclu-tag conclu-tag--green">03 &#xB7; Conclusi&#xF3;n</span>
              </div>
              <strong class="conclu-prompt">&#xBF;Por qu&#xE9; importa lo que vimos?</strong>
              <p class="conclu-sub">Tu conclusi&#xF3;n personal sobre la relevancia de esta sesi&#xF3;n</p>
              <div class="conclu-actions">
                <button class="conclu-count-btn" type="button">
                  <span class="conclu-count-icon">&#x270B;</span>
                  <span class="conclu-count-n">0</span>
                  <span class="conclu-count-label">compartieron</span>
                </button>
                <button class="conclu-reset-btn" type="button" title="Reiniciar">&#x21BA;</button>
              </div>
            </div>

          </div>
          <div class="conclu-footer">
            <span>Total: <strong id="concluTotal">0</strong> participaciones</span>
            <button class="conclu-reset-all-btn" type="button">&#x21BA; Reiniciar todo</button>
          </div>
        </div>
      </section>

      <nav class="controls" aria-label="Navegaci&#xF3;n de la presentaci&#xF3;n">
        <button id="prevBtn" type="button" class="epcl-button gh-portal-close">Atr&#xE1;s</button>
        <div class="counter" id="counter" aria-live="polite"></div>
        <button id="nextBtn" type="button" class="epcl-button gh-portal-close">Adelante</button>
      </nav>
    </main>
<!--kg-card-end: html-->
<figure class="kg-card kg-image-card"><img src="https://cesarzavaleta.dev/content/images/2026/05/bannerutp.png" class="kg-image" alt loading="lazy" width="1080" height="93" srcset="https://cesarzavaleta.dev/content/images/size/w600/2026/05/bannerutp.png 600w, https://cesarzavaleta.dev/content/images/size/w1000/2026/05/bannerutp.png 1000w, https://cesarzavaleta.dev/content/images/2026/05/bannerutp.png 1080w" sizes="(min-width: 720px) 720px"></figure>]]></content:encoded></item></channel></rss>