/* ... (Mantenemos la configuración general, identidad y botones del código anterior) ... */

body {
    background-color: #0a192f;
    color: #f0e68c;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    margin: 0;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.identidad { padding: 20px; text-align: left; }
.identidad h1 { font-size: 1.8rem; margin: 0; letter-spacing: 2px; }
.identidad p { font-size: 0.9rem; margin: 5px 0 0 0; opacity: 0.8; }

.interfaz {
    flex: 1; display: flex; flex-direction: column; align-items: center;
    max-width: 500px; margin: 0 auto; padding: 20px;
}

.accion-principal { margin: 40px 0; text-align: center; }
.boton-magico {
    background: transparent; color: #f0e68c; border: 2px solid #f0e68c;
    padding: 15px 30px; font-size: 1.2rem; border-radius: 50px;
    cursor: pointer; transition: all 0.3s ease;
    box-shadow: 0 0 15px rgba(240, 230, 140, 0.2);
}
.boton-magico:hover { background: #f0e68c; color: #0a192f; }

.estado-carga { margin-top: 15px; font-style: italic; font-size: 0.9rem; opacity: 0; transition: opacity 0.5s; }

.capas-personalizacion { width: 100%; display: flex; flex-direction: column; gap: 25px; }
.capa { display: flex; flex-direction: column; gap: 8px; }
.capa label { font-size: 0.9rem; text-transform: uppercase; opacity: 0.7; }
.capa select {
    background: rgba(255, 255, 255, 0.05); border: 1px solid rgba(240, 230, 140, 0.3);
    color: #f0e68c; padding: 12px; border-radius: 8px; font-size: 1rem;
}

.frase-salvavidas { margin-top: 60px; padding-bottom: 20px; text-align: center; }
.frase-salvavidas p { font-size: 1.4rem; opacity: 0.5; font-style: italic; }

/* --- EL ÁREA DEL CUENTO --- */
#contenedor-cuento {
    background: rgba(10, 25, 47, 0.9);
    border-top: 1px solid rgba(240, 230, 140, 0.1);
    padding: 40px 20px;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    display: none; /* Se activa con JS */
}

/* Animación de aparición MUY SUAVE para cada párrafo (2.5 segundos) */
.parrafo-cuento {
    font-size: 1.25rem;
    line-height: 1.8;
    margin-bottom: 30px;
    color: #e6dfb3;
    text-align: left;
    opacity: 0;
    transform: translateY(15px);
    transition: opacity 2.5s ease-in-out, transform 2.5s ease-in-out;
}

.parrafo-visible {
    opacity: 1;
    transform: translateY(0);
}

/* --- LAS CHISPITAS DEL RITUAL --- */
.contenedor-chispitas {
    position: relative;
    height: 30px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
}

.chispa-magica {
    position: absolute;
    width: 4px;
    height: 4px;
    background: #f0e68c;
    border-radius: 50%;
    box-shadow: 0 0 10px #f0e68c;
    opacity: 0;
}

@keyframes explosionSutil {
    0% { transform: scale(0) translate(0, 0); opacity: 1; }
    100% { transform: scale(1.2) translate(var(--tx), var(--ty)); opacity: 0; }
}