.tab-button {
    color: #848484;
    background: #ddd;
}

.tab-button.active {
    background: #cfd4d8;
    color: #4e575f;
}

.tab-button:not(.active):hover {
    background: #ccc;
}

#piano-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

#piano-controls.collapsed {
    display: none;
}

.control-label{
    font-weight: 600; margin-bottom: 6px; color: #c8d7e1;
}
.transpose-btn, .ctlbutton{
    background: linear-gradient(0deg, #3f4751, transparent);
    color: #63b3ed; 
    border: 2px solid #1A202C; 
    border-radius: 4px; 
    cursor: pointer;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 0 2px #000000a6;
}

.transpose-btn svg{
    display: block;
}

/* Keep piano's active color only when not yet loaded; let loaded take precedence (white) */
#piano-voice-selector .selector-row.active:not(.loaded) .selector-name,
#piano-voice-selector-mobile .selector-row.active:not(.loaded) .selector-name { color:#9eb8cb; }

/* Mobile devices - all orientations */
@media (max-width: 768px) {
    
    /* mobile tweaks are inherited from shared .controls-container */
    #piano-controls {
        flex-direction: column;
        gap: 12px;
    }
    .control-group {
        width: 100%;
        flex-direction: column;
        min-width: auto;
        max-width: none;
        font-family: "Sofia Sans Extra Condensed", sans-serif;
        font-optical-sizing: auto;
        font-weight: 300;
        font-style: normal;
    }
}
