﻿.dxbl-image.theme-icon {
    width: 1rem;
    height: 1rem;
    background-color: var(--bs-body-color);
    mask-image: url("../../switcher-resources/theme.svg");
    -webkit-mask-image: url("../../switcher-resources/theme.svg");
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
}

.blazor-themes {
    border-radius: 0;
    border: none;
}

    .blazor-themes,
    .blazor-themes div,
    .blazor-themes .list-group,
    .blazor-themes .themeswitcher-group {
        background-color: inherit;
    }

        .blazor-themes .list-group {
            flex-flow: row wrap;
            border: none;
            color: inherit;
        }

        .blazor-themes .list-group-item {
            flex: 1 0 100%;
            font-size: 1em;
            white-space: nowrap;
            padding: .5rem .75rem;
            border-radius: 0;
        }

        .blazor-themes .list-group-item-action:not(.active):not(:hover) {
            background: none;
        }

        .blazor-themes .list-group-item-action {
            flex: 1 0 50;
            max-width: 50%;
            font-weight: 500;
            border-color: transparent;
        }

        .blazor-themes .themeswitcher-group {
            font-weight: 600;
            position: sticky;
            top: 0;
            z-index: 3;
            color: inherit;
            border: none;
            margin-bottom: 0;
        }

            .blazor-themes .themeswitcher-group:not(:first-child):before,
            .blazor-themes .themeswitcher-group::after {
                content: "";
                position: absolute;
                width: 100%;
                left: 0;
                border-top: 1px solid currentColor;
                opacity: 0.15;
            }

            .blazor-themes .themeswitcher-group:not(:first-child):before {
                top: 0;
            }

            .blazor-themes .themeswitcher-group::after {
                bottom: 0;
            }

        .blazor-themes .themeswitcher-item > span {
            opacity: 0.8;
        }

        .blazor-themes a.list-group-item-action:before {
            content: "";
            display: inline;
            margin: 0 .75rem 0 .5rem;
            padding-right: 1.2em;
        }

        .blazor-themes a:before {
            border: 1px solid #fff;
        }

.theme-pulse .blazor-themes .themeswitcher-item:hover > span {
    color: white;
}

.themeswitcher-button {
    position: absolute;
    top: 15px;
    left: 15px;
    height: 0;
}

.themeswitcher-container {
    background-color: var(--bs-body-bg);
    position: fixed;
    top: calc(3.5rem + 1px);
    left: 0;
    width: 320px;
    height: 0;
    max-height: calc(100vh - 3.5rem);
    z-index: 1029;
}

.themeswitcher-container-shown,
.themeswitcher-container-hidden {
    transition: height 0.2s ease-in-out;
}

.themeswitcher-container-hidden {
    height: 0 !important;
    overflow: hidden;
}


.themeswitcher-container-shown {
    height: calc(100vh - 3.5rem);
}

/*@media (max-width: 1199.98px) {
    .themeswitcher-container {
        background-color: var(--bs-body-bg);
        position: fixed;
        top: calc(3.5rem + 1px);
        left: 0;
        width: 320px;
        height: 0;
        max-height: calc(100vh - 3.5rem);
        z-index: 1029;
        pointer-events: none;*/ /* prevent interaction when hidden */
    /*}

    .themeswitcher-container-shown,
    .themeswitcher-container-hidden {
        transition: transform 0.3s ease-in-out;
    }

    .themeswitcher-container-hidden {
        height: 0 !important;
        overflow: hidden;
    }

    .themeswitcher-container-shown {
        height: calc(100vh - 3.5rem);
    }
}*/

.theme-settings {
    margin-right: .5rem;
}

    .theme-settings:hover .theme-icon {
        background-color: currentColor;
    }

.btn-container > .theme-settings {
    --dxbl-btn-border-radius: 50%;
    width: 2.125rem;
    height: 2.125rem;
    border-width: 2px;
    align-items: center;
    justify-content: center;
    display: flex;
}
