body {
    margin: 0;
    padding: 0;
    background-color: #f0f0f0;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

.button-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-content: stretch;
    gap: 2%;
    width: 100vw;
    height: 100vh;
    padding: 2%;
    box-sizing: border-box;
}

.grid-button {
    flex: 0 0 calc(25% - 2%);
    /* Adjusted for 4 elements per row */
    max-width: calc(25% - 2%);
    max-height: 300px;
    min-height: 50px;
    background-color: #3498db;
    border: none;
    color: white;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    padding: 2%;
    box-sizing: border-box;
    border-radius: 5px;
}

/* Media query for smaller screens */
@media (max-width: 800px) {
    .grid-button {
        flex: 0 0 calc(33.333% - 2%);
        /* Adjusted for 3 elements per row */
        max-width: calc(33.333% - 2%);
        /* Adjusted for 3 elements per row */
    }
}

/* Media query for smallest screens */
@media (max-width: 600px) {
    .grid-button {
        flex: 0 0 calc(50% - 2%);
        /* Adjusted for 2 elements per row */
        max-width: calc(50% - 2%);
        /* Adjusted for 2 elements per row */
    }
}

#add-song-button {
    background-color: #e74c3c;
    color: white;
    font-weight: bold;
    border: none;
    padding: 1% 1.2%;
    cursor: pointer;
    font-size: 16px;
    border-radius: 5px;
}

.grid-button.active {
    background-color: #e74c3c;
}