/* Pantalla de carga sin cajas: la nube de pixeles ocupa toda la vista previa y los textos flotan encima. */
.generating-preview {
    position: absolute;
    inset: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    background: transparent;
    text-align: left;
}
.generation-status {
    position: absolute;
    top: 18px;
    left: 20px;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #c0cce0;
    font-size: 15px;
    text-shadow: 0 1px 8px #070b14;
}
.generation-portal-field { position: absolute; inset: 0; overflow: hidden; }
.generation-portal-field canvas { display: block; width: 100%; height: 100%; position: absolute; inset: 0; pointer-events: none; }
.generation-motion-status { position: absolute; bottom: 16px; left: 14px; right: 14px; color: #d2ddef; text-align: center; font-size: 14px; text-shadow: 0 2px 6px #000; }
.generation-info { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; padding: 40px 22px 18px; background: linear-gradient(transparent, rgba(8,13,23,.88) 45%); }
.generation-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.generation-meta > div { min-width: 0; flex: 1 1 180px; }
.generation-info h2 { font-size: 24px; letter-spacing: -.5px; line-height: 1.35; }
.generation-info #generating-model { font-size: 14px; color: #adbed5; margin-top: 5px; overflow-wrap: anywhere; }
.generation-info .elapsed { flex-shrink: 0; margin: 0; padding: 8px 12px; font-size: 14px; }
.generation-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 14px; }
.generation-controls p { color: #9cadc5; font-size: 13px; line-height: 1.6; flex: 1 1 200px; }
.generation-controls .button { min-height: 44px; font-size: 14px; padding: 10px 13px; }
@media (max-width: 740px) {
    .generation-status { top: 14px; left: 16px; font-size: 14px; }
    .generation-info { padding: 16px; }
    .generation-info h2 { font-size: 22px; }
}
@media (prefers-reduced-motion: reduce) {
    .generation-controls .button { transition: none; }
}
