.component-longevity-score-legend {
    --color-longevity-score: #555;

    --component-flex-direction: row;
    --component-score-gauge-width: auto;
    --component-score-legend-range-font-size: 18px;
    --component-score-legend-range-width: 110px;
    --component-score-legend-info-font-size: 20px;
    --component-score-legend-range-display: flex;

    @media (width <= 1440px) {
    }

    @media (width <= 1200px) {
    }

    @media (width <= 1100px) {
        --component-flex-direction: column;
        --component-score-gauge-width: 320px;
    }

    @media (width <= 992px) {
    }

    @media (width <= 768px) {
    }

    @media (width <= 768px) {
    }

    @media (width <= 600px) {
    }

    @media (width <= 576px) {
        --component-score-legend-range-font-size: 16px;
        --component-score-legend-range-width: 80px;
        --component-score-legend-info-font-size: 18px;
        --component-score-legend-range-display: none;
    }

    @media (width <= 440px) {
    }

    @media (width <= 320px) {
    }

    &[data-score-range="ideal"] { --color-longevity-score: var(--color-longevity-score-green); }
    &[data-score-range="strong"] { --color-longevity-score: var(--color-longevity-score-turcoise); }
    &[data-score-range="good"] { --color-longevity-score: var(--color-longevity-score-purple); }
    &[data-score-range="fair"] { --color-longevity-score: var(--color-longevity-score-orange); }
    &[data-score-range="low"] { --color-longevity-score: var(--color-longevity-score-red); }

    display: flex;
    flex-direction: var(--component-flex-direction);
    align-items: stretch;
    justify-content: start;
    gap: var(--report-grid-gap);

    .score-range {
        --range-color: var(--color-btm-dark-blue);
        --range-font-size: 18px;
        --range-border-radius: 12px;

        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        padding: 6px 24px;
        border-radius: var(--range-border-radius);
        font-size: var(--range-font-size);
        line-height: 1;
        font-weight: 600;
        font-family: 'IBM Plex Sans', sans-serif;
        text-transform: uppercase;
        color: var(--range-color);
        border: 1px solid rgb(from var(--range-color) r g b / 0.2);
        background-color: #fff;
        background-image: linear-gradient(rgb(from var(--range-color) r g b / 0.05), rgb(from var(--range-color) r g b / 0.05));
    }

    .longevity-score {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 24px;
        padding: 24px;
        border-radius: 16px;
        background-color: rgb(from #fff r g b / 0.75);

        .score-gauge {
            --gauge-color: var(--color-longevity-score);

            padding: 0 24px;
            max-width: var(--component-score-gauge-width);
        }
    }

    .longevity-legend {
        flex: 2.25;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: start;
        gap: 24px;
        padding: 24px 0 24px 0;
        border-radius: 16px;
        background-color: rgb(from #fff r g b / 0.75);

        header {
            padding: 0 12px 0 12px;
        }

        .legend-list {
            display: flex;
            flex-direction: column;
            align-items: stretch;
            justify-content: start;

            .legend-item {
                --item-color: var(--color-btm-dark-blue);
                --item-font-weight: 400;
                --item-vertical-padding: 12px;
                --background-color: transparent;

                &:nth-child(2n+1) {
                    --background-color: rgb(from var(--color-btm-dark-grey) r g b / 0.04);
                }

                &[data-selected="true"] {
                    --background-color: rgb(from var(--color-longevity-score) r g b / 0.1);
                    --item-font-weight: 700;
                    --item-vertical-padding: 12px;

                    &[data-legend-range="ideal"] { --item-color: var(--color-longevity-score); }
                    &[data-legend-range="strong"] { --item-color: var(--color-longevity-score); }
                    &[data-legend-range="good"] { --item-color: var(--color-longevity-score); }
                    &[data-legend-range="fair"] { --item-color: var(--color-longevity-score); }
                    &[data-legend-range="low"] { --item-color: var(--color-longevity-score); }
                }

                display: flex;
                flex-direction: row;
                align-items: center;
                justify-content: start;
                gap: 16px;
                padding: var(--item-vertical-padding) 12px;
                background-color: var(--background-color);

                .item-range {
                    display: var(--component-score-legend-range-display);
                    min-width: var(--component-score-legend-range-width);

                    .score-range {
                        --range-font-size: var(--component-score-legend-range-font-size);
                        --range-border-radius: 8px;
                        --range-color: var(--item-color);

                        width: 100%;
                        padding: 6px 8px;
                    }
                }

                .item-info {
                    flex: 1;
                    display: flex;
                    flex-direction: row;
                    align-items: center;
                    justify-content: start;
                    font-size: var(--component-score-legend-info-font-size);
                    line-height: 1;
                    color: var(--item-color);
                    font-weight: var(--item-font-weight);
                    font-family: 'IBM Plex Sans', sans-serif;

                    em {
                        display: contents;
                        font-weight: 700;
                    }
                }
            }
        }
    }
}
