/* ============================================================
   GUITAR SCALE CATALOG
   Compact Jam / Chord Progression Suggestions
   ============================================================ */

.jam-card {
    margin-top: 12px;

    padding: 17px 19px;
}


.jam-header {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    margin-bottom: 14px;
}


.jam-header h2 {
    margin: 3px 0 0;

    font-size: 19px;

    letter-spacing: -0.02em;
}


.jam-key-badge {
    display: inline-flex;
    align-items: center;

    min-height: 27px;

    padding: 0 10px;

    color: #cfe1f5;

    background: rgba(53, 136, 255, 0.10);

    border: 1px solid rgba(109, 170, 255, 0.20);

    border-radius: 999px;

    font-size: 11px;

    font-weight: 800;

    white-space: nowrap;
}


.jam-grid {
    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 10px;
}


.jam-progression {
    min-width: 0;

    padding: 14px 15px;

    background: #101923;

    border: 1px solid #29394a;

    border-radius: 12px;
}


.jam-progression-header {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;
}


.jam-progression h3 {
    margin: 0;

    font-size: 14px;

    font-weight: 800;
}


.roman-progression {
    color: #8398ab;

    font-size: 10px;

    font-weight: 700;

    white-space: nowrap;
}


.chord-row {
    margin-top: 11px;

    display: flex;
    align-items: center;

    gap: 6px;

    flex-wrap: wrap;
}


.chord-pill {
    min-width: 42px;
    min-height: 31px;

    padding: 0 9px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;

    background: linear-gradient(
        135deg,
        #2e7ce0,
        #205fb5
    );

    border: 1px solid #70aaf2;

    border-radius: 8px;

    font-size: 12px;

    font-weight: 850;
}


.chord-arrow {
    color: #667b8f;

    font-size: 12px;
}


.jam-progression p {
    margin: 10px 0 0;

    color: #9aabbc;

    font-size: 12px;

    line-height: 1.45;
}


.no-jam-data {
    margin: 0;

    color: var(--muted);

    font-size: 13px;
}


@media (max-width: 760px) {

    .jam-header {
        align-items: flex-start;

        flex-direction: column;

        gap: 7px;
    }


    .jam-grid {
        grid-template-columns: 1fr;
    }


    .jam-progression-header {
        align-items: flex-start;

        flex-direction: column;

        gap: 4px;
    }

}
