/* ==================================================
   CONTENEDOR PRINCIPAL (Padre en Blocksy)
================================================== */
.container-principal {
    display: flex;
    gap: 40px;              /* espacio entre controles y poema */
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;        /* baja en móvil automáticamente */
}


/* ==================================================
   CONTROLES (IZQUIERDA)
================================================== */

/* Wrapper que es hijo directo del principal */
.ecos-controles-wrapper {
    flex: 0 0 350px;        /* ancho elegante fijo */
    display: flex;
    justify-content: center;
}

/* Contenedor interno de controles */
.ecos-controles {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* Input */
#entrada-poema {
    width: 100%;
    padding: 14px;
    font-size: 16px;
    border-radius: 8px;
    border: 1px solid #ddd;
}

/* Botón */
#btn-generar {
    padding: 12px 24px;
    border: none;
    border-radius: 8px;
    background: #ff4f87;
    color: #ffffff;
    font-weight: bold;
    cursor: pointer;
    transition: 0.3s ease;
}

#btn-generar:hover {
    opacity: 0.9;
}


/* ==================================================
   SELECTOR DE FONDOS
================================================== */
.selector-fondos {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 10px;
}

.selector-fondos img {
    width: 60px;
    height: 60px;
    object-fit: cover;
    cursor: pointer;
    border-radius: 8px;
    border: 2px solid transparent;
    transition: 0.3s ease;
}

.selector-fondos img:hover {
    border-color: #ff4f87;
}


/* ==================================================
   POEMA (DERECHA)
================================================== */

/* Wrapper hijo directo del principal */
.ecos-poema-wrapper {
    flex: 1;                 /* ocupa espacio restante */
    min-width: 320px;
    display: flex;
    justify-content: center;
}

/* Tarjeta del poema */
.ecos-poema-box {
    width: 100%;
    max-width: 500px;
    padding: 40px 30px;
    background-size: cover;
    background-position: center;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Contenido */
.ecos-poema-content {
    text-align: center;
    color: #ffffff;
}

/* Título */
#poema-titulo {
    font-size: 24px;
    margin-bottom: 20px;
}

/* Texto del poema */
#poema-texto {
    white-space: pre-line;
    font-size: 20px;
    line-height: 1.8;
}


/* ==================================================
   RESPONSIVE
================================================== */
@media (max-width: 900px) {

    .container-principal {
        flex-direction: column;
        gap: 30px;
    }

    .ecos-controles-wrapper,
    .ecos-poema-wrapper {
        flex: 1 1 100%;
        width: 100%;
    }

    .ecos-poema-box {
        max-width: 100%;
    }
}