/* --- STEP LOGIC --- */

/* Nasconde tutte le domande di default */
.question-step {
    display: none;
}

/* Mostra lo step attivo sovrascrivendo d-none */
.question-step.active-step {
    display: block !important;
    animation: stepEntrance 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) forwards;
}

/* Unica animazione combinata (Fade + Slide leggero) molto più fluida */
@keyframes stepEntrance {
    from {
        opacity: 0;
        transform: translateY(10px); /* Entra dal basso verso l'alto */
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* --- SIDEBAR LOGIC --- */

.sidebar-item {
    cursor: pointer;
    transition: all 0.2s ease; /* Transizione morbida all'hover */
}

/* Stile unico e pulito per l'elemento attivo nella sidebar */
.nav-link.active-question {
    background-color: var(--main-blue-50) !important;
    color: var(--main-blue-color) !important;
    border-left: 4px solid var(--main-blue-color) !important;
    font-weight: 600;
}

.nav-link.active-question .badge {
    background-color: var(--main-blue-color) !important;
    color: #fff !important;
    border-color: var(--main-blue-color) !important;
}

.nav-link.locked-question.active-question {
    background-color: var(--main-grey-50) !important;
    color: var(--main-grey-color) !important;
    border-left: 4px solid var(--main-grey-color) !important;
    font-weight: 600;
}

.nav-link.locked-question.active-question .badge {
    background-color: var(--main-grey-color) !important;
    color: #fff !important;
    border-color: var(--main-grey-color) !important;
}