# review-mockup — E250-C0089

**Aprobada:** `v2-centered-hero.html`
**Motivo:** es la presentación correcta para la pantalla de aterrizaje post-login. Reutiliza la `card bg-base-100 border border-base-300` que el propio `PanelBookingView.vue` ya usa para envolver los pasos del booking, así que es coherente con la vista real, no un patrón ajeno. Renderizada, lee con claridad como estado vacío deliberado (icono + título + descripción + CTA, centrado y contenido en card). v1 (alert sin variante de color, `flex-col items-start`) renderiza como un bloque sin borde con el CTA flotando a la derecha, desconectado del texto: parece roto/inacabado y es visualmente débil para una pantalla a página completa.

## Findings por variante

### v1-alert-empty-state.html
- ✅ Tema `e250` correcto, wrapper real (`article max-w-2xl mx-auto p-4`), banner + badge "MOCKUP — no producción" presentes.
- ✅ DaisyUI semántico (`alert`, `btn btn-primary btn-sm`), `data-testid` previstos (`panel-booking-empty`, `panel-booking-empty-cta`).
- [ ] Bloqueante para esta pantalla: el `alert` sin `alert-*` y con `flex-col items-start` renderiza sin contenedor visible y deja el CTA flotando a la derecha, desconectado del texto. Lee como pantalla rota, no como estado vacío intencional. El patrón `alert` encaja para el empty inline y de una línea de `PanelExperiencesView.vue` (`panel-experiences-empty`) y para `ErrorState.vue`, pero no como aterrizaje a página completa. No es un fix de copy: es la elección de patrón la que no encaja aquí.

### v2-centered-hero.html (aprobada)
- ✅ Tema `e250` correcto, wrapper real (`article max-w-2xl mx-auto p-4`), banner + badge de mockup presentes.
- ✅ DaisyUI semántico: `card` / `card-body`, `btn btn-primary btn-sm`. Reutiliza la misma card que ya usa `PanelBookingView.vue` (no inventa look ajeno). `data-testid` previstos.
- ✅ Cubre los criterios visuales del contrato: mensaje legible de que no hay experiencia seleccionada + CTA a la lista de experiencias; ninguna variante dispara carga de producto ni muestra error.
- [ ] Menor (copy, opcional, no bloqueante): el título dice "Ningún producto seleccionado" mientras el cuerpo y el contrato hablan de "experiencia". Por la unificación a identidad de experiencia de C0087, valorar alinear el título a "Ninguna experiencia seleccionada" en la implementación real. No afecta a la elección de variante.

## Veredicto

aprobado: v2-centered-hero.html (con el ajuste menor de copy de título como opcional para build-frontend)
