:root {
    --red: #e72829;
    --poppy: #ee5524;
    --orange: #f8982c;
    --gold: #ffd25b;
    --yellow: #f1e606;
    --green: #6ab845;
    --mint: #65c081;
    --teal: #009999;
    --blue: #1e7fc3;
    --purple: #7b569e;
    --plum: #b76aa9;
    --pink: #f49dc3;
    --white: #FFFFFF;
}

body {
    margin:0;
    background-image:url('images/prodigies-sheet-music-app-background-w2400px.png');
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center;
    background-attachment:fixed;
    min-height:100vh;
    font-size: 20px;
}

h3 {
    margin-bottom:.5rem;
    color: #545F71;
    font-size: 1.3rem;
}

a {
    color:#FFF;
    text-decoration:none;
    cursor:pointer;
}

.sheet-music-grid-wrapper {
    width:100%;
    height:100%;
    margin-top: 80px;
    display:flex;
    flex-direction:row;
    justify-content:flex-start;
    align-items:flex-start;
    /* column-gap: .8rem; */
}

/* Mobile */
@media (max-width: 768px) {
    .sheet-music-grid-wrapper {
        flex-direction:column !important;
    }
    .sheet-music-grid-sidebar {
        width:100% !important;
        height:100% !important;
        position:relative !important;
        margin:0 !important;
        padding:0 !important;
    }
    .sheet-music-grid-main {
        margin:0 !important;
        padding:0 !important;
        width:100% !important;
    }
    .sheet-music-grid-container {
        flex-direction:column !important;
        align-items: center !important;
    }
    .sheet-music-grid-item {
        width:95% !important;
        margin-bottom:1rem !important;
    }
}

.sheet-music-grid-sidebar {
    display:flex;
    position:fixed;
    width:380px;
    height:100%;
    height:calc(100vh - 80px);
    padding: 0rem 1rem;
    overflow:scroll;
    background-color: #F5F5F5;
}

.sheet-music-grid-sidebar-inner {
    display:flex;
    width:100%;
    padding: 1.5rem 1rem;
    background-color: #F5F5F5;
    flex-direction:column;
    overflow: visible;
    font-family: 'Nunito', sans-serif;
    padding-bottom:5rem;
}

.sheet-music-grid-sidebar div.search-for {
    margin-bottom:1rem;
    margin-right: 1rem;
}

form {
    color: #545F71;
    background: #D9D9D9;
    display: flex;
    padding: 5px;
    /* border: 1px solid currentColor;   */
    border-radius: 0px;
    height:2rem;
    width:100%;
}

input[type="search"] {
    border: none;
    background: transparent;
    margin: 0;
    padding: 7px 8px;
    font-size: 20px;
    color: inherit;
    border: 1px solid transparent;
    border-radius: inherit;
    width: 100%;
    font-family: 'Nunito', sans-serif;
}

input[type="search"]::placeholder {
    color: #545F71;
}

button[type="submit"] {
    text-indent: -999px;
    overflow: hidden;
    width: 60px;
    padding: 0;
    margin: 0;
    border: 1px solid transparent;
    border-radius: inherit;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' class='bi bi-search' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'%3E%3C/path%3E%3C/svg%3E") no-repeat center;
    cursor: pointer;
    opacity: 0.7;
}

button[type="submit"]:hover {
    opacity: 1;
}

button[type="submit"]:focus,
input[type="search"]:focus {
    box-shadow: 0 0 3px 0 #1183d6;
    border-color: #1183d6;
    outline: none;
}

div.filter-by-option {
    margin-bottom:2rem;
}

div.checkbox-button input {
    display: none;
}

div.checkbox-button label {
    display: inline-block;
    background-color: transparent;
    color: #545F71;
    padding: 0.2rem 0.5rem;
    font-size: 1rem;
    border: 1px solid #BACAE5;
    border-radius: 12px;
    cursor: pointer;
    margin-right: 0.3rem;
    margin-bottom: 0.35rem;
}

div.checkbox-button label:hover, div.checkbox-button label:focus, div.checkbox-button label:active, div.checkbox-button input:checked + label {
    background-color: #01B3B3;
    color: #FFF;
}

div.sheet-music-grid-main {
    display: flex;
    flex-direction: column;
    /* flex-wrap: wrap; */
    margin-left:430px;
    padding: 1rem 1rem;
    padding-bottom:3rem;
    color: #FFFFFF;
    font-family: 'Nunito', sans-serif;
    font-size: 20px;
}

div.sheet-music-grid-main div.result-count {
    font-size:.8rem;
    margin-bottom:1rem;
    color:#F4F4F4;
}

div.sheet-music-grid-main div.no-results-message {
    font-size:1.5rem;
    margin-bottom:1rem;
    color:#F4F4F4;
}

div.sheet-music-grid-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 1.5rem;
    row-gap: 1.5rem;
    transition: all 0.2s ease-in-out;
}

div.sheet-music-grid-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #FFFFFF;
    border-radius: 20px;
    width: 300px;
    color: #1E1E1E;
    transition: all 0.2s ease-in-out;
}

div.sheet-music-grid-item:hover {
    transform:scale(1.03);
    cursor: pointer;
}

div.sheet-music-grid-item.has-fixed-do-badge, div.sheet-music-grid-item.has-movable-do-badge {
    position: relative;
}

div.sheet-music-grid-item.has-fixed-do-badge::before, div.sheet-music-grid-item.has-movable-do-badge::before {
    position: absolute;
    top: -15px;
    right: 0;
    width: 50px;
    height: 50px;
    z-index: 1;
    pointer-events: none;
}

div.sheet-music-grid-item.has-fixed-do-badge::before {
        /* show images/fixed-do-badge.png badge overlay top right corner of div */
        content: url('images/fixed-do-badge.png?v=125');
}

div.sheet-music-grid-item.has-movable-do-badge::before {
        /* show images/moveable-do-badge.png badge overlay top right corner of div */
        content: url('images/movable-do-badge.png?v=125');
}

/* if both badges are present show a movable-fixed-do-badge.png */
div.sheet-music-grid-item.has-fixed-do-badge.has-movable-do-badge::before {
        /* content: url('images/movable-fixed-do-badge.png'); ENABLE THIS WHEN WE HAVE A UNIFIED BADGE */
        content: url('images/movable-do-badge.png?v=125');
}

div.sheet-music-grid-item-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    border-radius:20px;
    overflow:hidden;
    padding:0;
}

div.sheet-music-grid-item div.sheet-music-grid-item-thumbnail {
    width:100%;
    height:250px;
    background-size:contain;
    background-repeat: no-repeat;
    background-position: center;
}

div.sheet-music-grid-item h4 {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size: 1.1rem;
    text-align:center;
    max-width:90%;
    height:2.2rem;
}

div.sheet-music-grid-item-meta-bar {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 270px;
    background: #F4F4F4;
    padding: 0.1rem 0.8rem;
}

div.sheet-music-grid-item-meta-bar div.sheet-music-grid-item-meta-difficulty,
div.sheet-music-grid-item-meta-bar div.sheet-music-grid-item-meta-key-signature,
div.sheet-music-grid-item-meta-bar div.sheet-music-grid-item-meta-time-signature {
    padding: 0.2rem 0.9rem;
    font-size: 1rem;
}

div.sheet-music-grid-item-meta-bar div.sheet-music-grid-item-meta-difficulty {
    color: #68C047;
}

div.sheet-music-grid-item-meta-bar div.sheet-music-grid-item-meta-key-signature {
    color: #07B3B3;
}

div.sheet-music-grid-item-meta-bar div.sheet-music-grid-item-meta-time-signature {
    color: #B307B3;
}

div.sheet-music-grid-sidebar div#clear-filters-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 2rem;
    color: #545F71;
    font-size: .8rem;
    cursor: pointer;
}

/* Specialty Styles for Coloring Filter Buttons */

/* Low A */
div.checkbox-button.notes_used input + label.low-a {
    color: var(--purple);
    border-color: var(--purple);
}

div.checkbox-button.notes_used input:checked + label.low-a, div.checkbox-button.notes_used input:hover + label.low-a, div.checkbox-button.notes_used input:focus + label.low-a, div.checkbox-button.notes_used input:active + label.low-a {
    background-color: var(--purple);
    color: var(--white);
}

/* Low A#/Bb */
div.checkbox-button.notes_used input + label.low-a-sharp-bb {
    color: var(--plum);
    border-color: var(--plum);
}

div.checkbox-button.notes_used input:checked + label.low-a-sharp-bb, div.checkbox-button.notes_used input:hover + label.low-a-sharp-bb, div.checkbox-button.notes_used input:focus + label.low-a-sharp-bb, div.checkbox-button.notes_used input:active + label.low-a-sharp-bb {
    background-color: var(--plum);
    color: var(--white);
}

/* B */
div.checkbox-button.notes_used input + label.b {
    color: var(--pink);
    border-color: var(--pink);
}

div.checkbox-button.notes_used input:checked + label.b, div.checkbox-button.notes_used input:hover + label.b, div.checkbox-button.notes_used input:focus + label.b, div.checkbox-button.notes_used input:active + label.b {
    background-color: var(--pink);
    color: var(--white);
}

/* Low B */
div.checkbox-button.notes_used input + label.low-b {
    color: var(--pink);
    border-color: var(--pink);
}

div.checkbox-button.notes_used input:checked + label.low-b, div.checkbox-button.notes_used input:hover + label.low-b, div.checkbox-button.notes_used input:focus + label.low-b, div.checkbox-button.notes_used input:active + label.low-b {
    background-color: var(--pink);
    color: var(--white);
}

/* C */
div.checkbox-button.notes_used input + label.c {
    color: var(--red);
    border-color: var(--red);
}

div.checkbox-button.notes_used input:checked + label.c, div.checkbox-button.notes_used input:hover + label.c, div.checkbox-button.notes_used input:focus + label.c, div.checkbox-button.notes_used input:active + label.c {
    background-color: var(--red);
    color: var(--white);
}

/* hi C */
div.checkbox-button.notes_used input + label.hi-c {
    color: var(--red);
    border-color: var(--red);
}

div.checkbox-button.notes_used input:checked + label.hi-c, div.checkbox-button.notes_used input:hover + label.hi-c, div.checkbox-button.notes_used input:focus + label.hi-c, div.checkbox-button.notes_used input:active + label.hi-c {
    background-color: var(--red);
    color: var(--white);
}

/* hi C#/Db */
div.checkbox-button.notes_used input + label.hi-c-sharp-db {
    color: var(--poppy);
    border-color: var(--poppy);
}

div.checkbox-button.notes_used input:checked + label.hi-c-sharp-db, div.checkbox-button.notes_used input:hover + label.hi-c-sharp-db, div.checkbox-button.notes_used input:focus + label.hi-c-sharp-db, div.checkbox-button.notes_used input:active + label.hi-c-sharp-db {
    background-color: var(--poppy);
    color: var(--white);
}

/* C#/Db */
div.checkbox-button.notes_used input + label.c-sharp-db {
    color: var(--poppy);
    border-color: var(--poppy);
}

div.checkbox-button.notes_used input:checked + label.c-sharp-db, div.checkbox-button.notes_used input:hover + label.c-sharp-db, div.checkbox-button.notes_used input:focus + label.c-sharp-db, div.checkbox-button.notes_used input:active + label.c-sharp-db {
    background-color: var(--poppy);
    color: var(--white);
}

/* D */
div.checkbox-button.notes_used input + label.d {
    color: var(--orange);
    border-color: var(--orange);
}

div.checkbox-button.notes_used input:checked + label.d, div.checkbox-button.notes_used input:hover + label.d, div.checkbox-button.notes_used input:focus + label.d, div.checkbox-button.notes_used input:active + label.d {
    background-color: var(--orange);
    color: var(--white);
}

/* hi D */
div.checkbox-button.notes_used input + label.hi-d {
    color: var(--orange);
    border-color: var(--orange);
}

div.checkbox-button.notes_used input:checked + label.hi-d, div.checkbox-button.notes_used input:hover + label.hi-d, div.checkbox-button.notes_used input:focus + label.hi-d, div.checkbox-button.notes_used input:active + label.hi-d {
    background-color: var(--orange);
    color: var(--white);
}

/* hi D#/Eb */
div.checkbox-button.notes_used input + label.hi-d-sharp-eb {
    color: var(--gold);
    border-color: var(--gold);
}

div.checkbox-button.notes_used input:checked + label.hi-d-sharp-eb, div.checkbox-button.notes_used input:hover + label.hi-d-sharp-eb, div.checkbox-button.notes_used input:focus + label.hi-d-sharp-eb, div.checkbox-button.notes_used input:active + label.hi-d-sharp-eb {
    background-color: var(--gold);
    color: var(--white);
}

/* hi E */
div.checkbox-button.notes_used input + label.hi-e {
    color: var(--yellow);
    border-color: var(--yellow);
}

div.checkbox-button.notes_used input:checked + label.hi-e, div.checkbox-button.notes_used input:hover + label.hi-e, div.checkbox-button.notes_used input:focus + label.hi-e, div.checkbox-button.notes_used input:active + label.hi-e {
    background-color: var(--yellow);
    color: var(--white);
}

/* D#/Eb */
div.checkbox-button.notes_used input + label.d-sharp-eb {
    color: var(--gold);
    border-color: var(--gold);
}

div.checkbox-button.notes_used input:checked + label.d-sharp-eb, div.checkbox-button.notes_used input:hover + label.d-sharp-eb, div.checkbox-button.notes_used input:focus + label.d-sharp-eb, div.checkbox-button.notes_used input:active + label.d-sharp-eb {
    background-color: var(--gold);
    color: var(--white);
}

/* E */

div.checkbox-button.notes_used input + label.e {
    color: var(--yellow);
    border-color: var(--yellow);
}

div.checkbox-button.notes_used input:checked + label.e, div.checkbox-button.notes_used input:hover + label.e, div.checkbox-button.notes_used input:focus + label.e, div.checkbox-button.notes_used input:active + label.e {
    background-color: var(--yellow);
    color: var(--white);
}

/* F */

div.checkbox-button.notes_used input + label.f {
    color: var(--green);
    border-color: var(--green);
}

div.checkbox-button.notes_used input:checked + label.f, div.checkbox-button.notes_used input:hover + label.f, div.checkbox-button.notes_used input:focus + label.f, div.checkbox-button.notes_used input:active + label.f {
    background-color: var(--green);
    color: var(--white);
}

/* F#/Gb */

div.checkbox-button.notes_used input + label.f-sharp-gb {
    color: var(--mint);
    border-color: var(--mint);
}

div.checkbox-button.notes_used input:checked + label.f-sharp-gb, div.checkbox-button.notes_used input:hover + label.f-sharp-gb, div.checkbox-button.notes_used input:focus + label.f-sharp-gb, div.checkbox-button.notes_used input:active + label.f-sharp-gb {
    background-color: var(--mint);
    color: var(--white);
}

/* G */

div.checkbox-button.notes_used input + label.g {
    color: var(--teal);
    border-color: var(--teal);
}

div.checkbox-button.notes_used input:checked + label.g, div.checkbox-button.notes_used input:hover + label.g, div.checkbox-button.notes_used input:focus + label.g, div.checkbox-button.notes_used input:active + label.g {
    background-color: var(--teal);
    color: var(--white);
}

/* G#/Ab */

div.checkbox-button.notes_used input + label.g-sharp-ab {
    color: var(--blue);
    border-color: var(--blue);
}

div.checkbox-button.notes_used input:checked + label.g-sharp-ab, div.checkbox-button.notes_used input:hover + label.g-sharp-ab, div.checkbox-button.notes_used input:focus + label.g-sharp-ab, div.checkbox-button.notes_used input:active + label.g-sharp-ab {
    background-color: var(--blue);
    color: var(--white);
}

/* A */

div.checkbox-button.notes_used input + label.a {
    color: var(--purple);
    border-color: var(--purple);
}

div.checkbox-button.notes_used input:checked + label.a, div.checkbox-button.notes_used input:hover + label.a, div.checkbox-button.notes_used input:focus + label.a, div.checkbox-button.notes_used input:active + label.a {
    background-color: var(--purple);
    color: var(--white);
}

/* A#/Bb */

div.checkbox-button.notes_used input + label.a-sharp-bb {
    color: var(--plum);
    border-color: var(--plum);
}

div.checkbox-button.notes_used input:checked + label.a-sharp-bb, div.checkbox-button.notes_used input:hover + label.a-sharp-bb, div.checkbox-button.notes_used input:focus + label.a-sharp-bb, div.checkbox-button.notes_used input:active + label.a-sharp-bb {
    background-color: var(--plum);
    color: var(--white);
}

/*

C -Red e72829
C#/Db - Poppy ee5524
D - Orange f8982c
D#/Eb - Gold ffd25b
E Yellow f1e606
F Green 6ab845
F#/Gb Mint 65c081
G Teal 009999
G#/Ab Blue 1e7fc3
A Purple 7b569e
A#/Bb Plum b76aa9
B Pink f49dc3 (edited)

*/


div.notes_used_filter_wrapper {
    display:flex;
    flex-direction:row;
    justify-content: space-between;
    align-items:center;
    margin-bottom: .5em;
}
div.notes_used_filter_wrapper h3 {
    margin-top:0;
    margin-bottom:0;
}
div.notes_used_filter_wrapper div.notes_used_filter_type {
    font-size:.7rem;
    display:flex;
    flex-direction:row;
    justify-content: space-between;
    align-items:center;
}
div.notes_used_filter_wrapper div.notes_used_filter_type input[type="radio"] {
    /* hide radio buttons */
    display:none;
}
div.notes_used_filter_wrapper div.notes_used_filter_type label {
    display:inline-block;
    background-color: transparent;
    color: #545F71;
    padding: 0.2rem 0.5rem;
    cursor: pointer;
    text-transform:uppercase;
    font-weight:800;
}
div.notes_used_filter_wrapper div.notes_used_filter_type label:hover, div.notes_used_filter_wrapper div.notes_used_filter_type label:focus, div.notes_used_filter_wrapper div.notes_used_filter_type label:active, div.notes_used_filter_wrapper div.notes_used_filter_type input[type="radio"]:checked + label {
    color: #01B3B3;
}
