﻿#topbar {
    top: 0;
    left: 0;
    right: 0;
    height: 80px;
    background: #111;
    border-bottom: 1px solid #222;
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 15px;
    z-index: 100;
}

#controls {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    max-height: 80px;
    overflow-y: auto;
}

.instrument {
    background: #1d1d1d;
    padding: 6px 12px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
}

#rollContainer {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: clip;
}

canvas {
    display: block;
    overflow: clip;
}

#keyboard {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 1232px;
    height: 140px;
    overflow: clip;
}

.white-key {
    position: absolute;
    width: 24px;
    height: 140px;
    background: linear-gradient( to bottom, #ffffff 0%, #f0f0f0 50%, #d8d8d8 100% );
    border: 1px solid #999;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    box-shadow: inset 0 1px 2px rgba(255,255,255,0.9), inset 0 -6px 8px rgba(0,0,0,0.15);
}

    .white-key.active {
        background: linear-gradient( to bottom, #8ec5ff 0%, #5ba7ff 100% );
    }

.black-key {
    position: absolute;
    width: 14px;
    height: 90px;
    background: linear-gradient( to bottom, #444 0%, #111 100% );
    border-radius: 0 0 4px 4px;
    z-index: 30;
    box-shadow: inset 0 -3px 5px rgba(255,255,255,0.1), 0 3px 6px rgba(0,0,0,0.7);
}

    .black-key.active {
        background: linear-gradient( to bottom, #5ba7ff 0%, #1f6eff 100% );
    }
