/* Contenedor principal para la fase de asignación */
.assignment-container {
    position: fixed; /* Ocupa toda la pantalla */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--bg-color);
    color: var(--text-color);
    display: flex; /* Usamos flexbox para centrar el contenido */
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: var(--base-padding);
    text-align: center;
    user-select: none;
    z-index: 1000;
    overflow-y: auto; /* Permite scroll vertical si el contenido es muy largo */
}

/* Animación de entrada para el contenedor */
@keyframes fadeInAssignment {
    from { opacity: 0; }
    to { opacity: 1; }
}
.assignment-container {
    animation: fadeInAssignment 0.3s ease-out forwards;
}

/* Mensaje de "Pasa el móvil a..." */
.handoff-message {
    font-size: clamp(1.5rem, 6vw, 2.5rem); /* Tamaño de fuente adaptable */
    line-height: 1.4;
    cursor: pointer; /* Mantenemos el cursor de puntero aquí */
}
.handoff-message .player-name {
    display: block;
    font-weight: bold;
    color: var(--info-color-light);
    margin-top: 0.5rem;
    margin-bottom: 1.5rem;
}
.handoff-message .prompt-text {
    font-size: 0.7em;
    color: var(--text-muted-color);
    font-style: italic;
}

/* Tarjeta que revela el rol */
.role-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.5rem; /* Espacio entre el nombre del rol y los botones */
    padding: 2rem;
    border: 1px solid var(--border-color-light);
    border-radius: var(--border-radius-lg);
    background-color: var(--section-bg);
    box-shadow: var(--box-shadow-md);
    min-width: 300px;
    max-width: 90vw;
}

/* Contenedor para los botones de la tarjeta de rol */
.role-card-actions {
    display: flex;
    justify-content: center;
    gap: 1rem; /* Espacio entre los botones */
    width: 100%;
}

/* Animación para la tarjeta de rol */
@keyframes revealRoleCard {
    from { transform: scale(0.8) rotateY(90deg); opacity: 0; }
    to { transform: scale(1) rotateY(0deg); opacity: 1; }
}
.role-card {
    animation: revealRoleCard 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

.role-card .role-name {
    font-size: clamp(2rem, 8vw, 3.5rem); /* Texto del rol bien grande */
    font-weight: bold;
    color: var(--text-color-light);
}

/* Estilos de sección para las pantallas finales */
.final-screen, .roles-reveal-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 2rem;
    width: 100%;
    max-width: 500px;
    background-color: var(--section-bg);
    border-radius: var(--border-radius-lg);
    box-shadow: var(--box-shadow-md);
    animation: fadeInAssignment 0.5s ease-out forwards; /* Reutilizamos la animación de fade-in */
}


.final-screen h2, .roles-reveal-container h2 {
    font-size: clamp(1.8rem, 7vw, 2.5rem);
    color: var(--text-color-light);
    margin-bottom: 0.5rem;
}

.final-screen p {
    font-size: clamp(1rem, 4vw, 1.2rem);
    max-width: 45ch; /* Ancho de línea óptimo para legibilidad */
    line-height: 1.5;
}

.final-screen .btn, .roles-reveal-container .btn {
    margin-top: 1.5rem; /* Espacio extra para el botón principal */
}

/* Estilos para la lista de roles revelados */
.revealed-role-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 0.8rem 0.5rem;
    font-size: 1.1rem;
    border-bottom: 1px solid var(--border-color);
}
.revealed-role-item:last-child {
    border-bottom: none;
}
.revealed-role-item .player-name {
    font-weight: bold;
    color: var(--text-color);
    margin-right: 1rem; /* Espacio entre nombre y rol */
}
.revealed-role-item .role-name {
    color: var(--info-color-light);
    text-align: right;
}