.title {
    color: var(--brand-blue-dark, #1478a6);
    font-weight: 700;
}

.lista {
    padding-left: 0px;
    list-style: none;
}

.lista li {
    margin: 10px 0px;
    text-transform: uppercase;
}

/* Codice OTP: 6 cifre ben separate e leggibili */
.otp-code {
    font-family: "Courier New", Courier, monospace;
    font-size: 2rem;
    font-weight: bold;
    letter-spacing: 0.6rem;
    text-align: center;
    text-indent: 0.6rem;
    color: #189CBB;
}

.otp-code.is-invalid {
    border-color: #dc3545;
}

@media (max-width: 575.98px) {
    .otp-code {
        font-size: 1.5rem;
        letter-spacing: 0.35rem;
        text-indent: 0.35rem;
    }
}

/* Conto alla rovescia della scadenza del codice */
.otp-timer {
    text-align: center;
    margin-bottom: 1rem;
}

.otp-timer-running {
    margin-bottom: 0.5rem;
}

.otp-timer-value {
    font-family: "Courier New", Courier, monospace;
    font-size: 1.25rem;
    font-variant-numeric: tabular-nums;
    color: #189CBB;
}

.otp-timer-progress {
    height: 0.4rem;
    max-width: 20rem;
    margin: 0 auto;
}

.otp-timer-progress .progress-bar {
    background-color: #189CBB;
    transition: width 1s linear;
}

.otp-timer.is-warning .otp-timer-value {
    color: #bd1723;
}

.otp-timer.is-warning .otp-timer-progress .progress-bar {
    background-color: #bd1723;
}

.otp-timer-expired {
    margin: 0.5rem 0 0 0;
    font-weight: bold;
}

.otp-timer.is-expired .otp-timer-running,
.otp-timer.is-expired .otp-timer-progress {
    display: none;
}

@media (prefers-reduced-motion: reduce) {
    .otp-timer-progress .progress-bar {
        transition: none;
    }
}
