/* ---------------------- error page ---------------------- */
.fade-in {
    animation: fadeIn ease 1s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeIn {
    0%   { opacity: 0; transform: translateY(20px); }
    100% { opacity: 1; transform: translateY(0); }
}

.btn-outline-black {
    color: black;
    border: 2px solid black;
    background-color: transparent;
}

.btn-outline-black:hover {
    background-color: black;
    color: white;
}

#cue-a, #cue-b { touch-action: none; } /* Per evitare errori nei dispositivi mobili */
/* -------------------------------------------------------- */

/* ---------------------- playing page ---------------------- */
.deck-main-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.deck-control-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.deck-bpm-input {
    width: 6rem;
    min-width: 5rem;
}

.deck-step-select {
    width: auto;
    min-width: 6rem;
}

.deck-main-controls .btn {
    white-space: nowrap;
}

@media (max-width: 576px) {
    .deck-control-group {
        width: 100%;
    }

    .deck-control-group .btn {
        flex: 1 1 auto;
    }

    .deck-bpm-input {
        width: 100%;
        flex: 1 1 100%;
    }

    .deck-step-select {
        flex: 1 1 auto;
    }
}
/* -------------------------------------------------------- */