﻿.switch {
    --bs-switch-bg: var(--bs-gray-500);
    --bs-switch-color: rgba(var(--bs-base-color), 0.4);
    --bs-switch-border-color: var(--bs-gray-100);
    --bs-switch-box-shadow: 0 0 0.25rem 0 rgba(34, 48, 62, 0.16) inset;
    --bs-switch-holder-bg: var(--bs-white);
    --bs-switch-holder-shadow: var(--bs-box-shadow-xs);
    position: relative;
    display: inline-block;
    border-radius: 30rem;
    cursor: pointer;
    margin-inline-end: .75rem;
    vertical-align: middle;
    font-size: .9375rem;
    line-height: 1.4;
    min-block-size: 1.35rem
}

    .switch .switch-input:checked ~ .switch-toggle-slider {
        --bs-switch-bg: var(--bs-primary);
        --bs-switch-color: var(--bs-white);
        --bs-switch-border-color: var(--bs-primary);
        --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-primary-rgb), .3)
    }

    .switch[class*=switch-outline-], .switch.switch-outline {
        --bs-switch-bg: transparent;
        --bs-switch-box-shadow: none;
        --bs-switch-holder-bg: var(--bs-gray-100);
        --bs-switch-holder-shadow: none
    }

        .switch[class*=switch-outline-] .switch-input:checked ~ .switch-toggle-slider, .switch.switch-outline .switch-input:checked ~ .switch-toggle-slider {
            --bs-switch-bg: transparent;
            --bs-switch-box-shadow: none
        }

        .switch.switch-outline .switch-input:checked ~ .switch-toggle-slider {
            --bs-switch-color: var(--bs-primary);
            --bs-switch-border-color: var(--bs-primary);
            --bs-switch-holder-bg: var(--bs-primary)
        }

    .switch:has(.switch-input:disabled) {
        cursor: not-allowed
    }

    .switch .switch-input ~ .switch-label {
        padding-inline-start: 3rem
    }

    .switch .switch-toggle-slider {
        block-size: 1.35rem;
        inline-size: 2.5rem;
        line-height: 1.35rem
    }

        .switch .switch-toggle-slider .icon-base {
            position: relative;
            block-size: .9375rem;
            font-size: .9375rem;
            inline-size: .9375rem;
            inset-block-start: -1.9px
        }

    .switch .switch-label {
        inset-block-start: .01875rem
    }

    .switch .switch-toggle-slider::after {
        block-size: 14px;
        inline-size: 14px
    }

    .switch .switch-on {
        padding-inline: .125rem 1.1rem
    }

    .switch .switch-off {
        padding-inline-start: 1.1rem
    }

    .switch .switch-input.is-invalid ~ .switch-label, .was-validated .switch .switch-input:invalid ~ .switch-label {
        color: var(--bs-form-invalid-border-color)
    }

    .switch .switch-input.is-valid ~ .switch-label, .was-validated .switch .switch-input:valid ~ .switch-label {
        color: var(--bs-form-valid-border-color)
    }

    .switch .switch-input.is-invalid ~ .switch-toggle-slider, .was-validated .switch .switch-input:invalid ~ .switch-toggle-slider {
        --bs-switch-border-color: var(--bs-form-invalid-border-color)
    }

    .switch .switch-input.is-valid ~ .switch-toggle-slider, .was-validated .switch .switch-input:valid ~ .switch-toggle-slider {
        --bs-switch-border-color: var(--bs-form-valid-border-color)
    }

    .switch .switch-input.is-invalid:checked ~ .switch-toggle-slider, .was-validated .switch .switch-input:invalid:checked ~ .switch-toggle-slider {
        --bs-switch-bg: var(--bs-form-invalid-color);
        --bs-switch-box-shadow: none
    }

    .switch .switch-input.is-valid:checked ~ .switch-toggle-slider, .was-validated .switch .switch-input:valid:checked ~ .switch-toggle-slider {
        --bs-switch-bg: var(--bs-form-valid-color);
        --bs-switch-box-shadow: none
    }

.switch-input {
    position: absolute;
    z-index: -1;
    opacity: 0
}

    .was-validated .switch-input:invalid ~ .valid-feedback, .was-validated .switch-input:invalid ~ .valid-tooltip, .switch-input.is-invalid ~ .valid-feedback, .switch-input.is-invalid ~ .valid-tooltip, .was-validated .switch-input:valid ~ .valid-feedback, .was-validated .switch-input:valid ~ .valid-tooltip, .switch-input.is-valid ~ .valid-feedback, .switch-input.is-valid ~ .valid-tooltip {
        display: block
    }

.switch-toggle-slider {
    position: absolute;
    overflow: hidden;
    border: 1px solid var(--bs-switch-border-color);
    border-radius: 30rem;
    background: var(--bs-switch-bg);
    box-shadow: var(--bs-switch-box-shadow);
    color: var(--bs-switch-color);
    font-size: .625rem;
    inset-block-start: 50%;
    transform: translateY(-50%);
    transition-duration: .2s;
    transition-property: inset-inline-start,inset-inline-end,background,box-shadow;
    user-select: none
}

    .switch-toggle-slider::after {
        position: absolute;
        display: block;
        border-radius: 50%;
        background: var(--bs-switch-holder-bg);
        box-shadow: var(--bs-switch-holder-shadow);
        content: "";
        inset-block-start: 50%;
        inset-inline: 8% auto;
        transform: translateY(-50%);
        transition-duration: .2s;
        transition-property: inset-inline-start,inset-inline-end,background
    }

.switch-label {
    position: relative;
    display: inline-block;
    color: var(--bs-heading-color);
    font-weight: 400
}

    .switch-label:first-child {
        padding-inline-end: .5rem
    }

.switch-off, .switch-on {
    position: absolute;
    block-size: 100%;
    inline-size: 100%;
    inset-block-start: 0;
    text-align: center;
    transition-duration: .2s;
    transition-property: inset-inline-start,inset-inline-end
}

.switch-on {
    inset-inline-start: -100%
}

.switch-input:not(:checked) ~ .switch-toggle-slider .switch-on {
    color: rgba(0,0,0,0)
}

.switch-off {
    inset-inline-start: 0
}

.switch-input:checked ~ .switch-toggle-slider::after {
    inset-inline: 95% auto;
    transform: translate(-100%, -50%)
}

:dir(rtl) .switch-input:checked ~ .switch-toggle-slider::after {
    inset-inline: 94% auto;
    transform: translate(100%, -50%)
}

.switch-input:checked ~ .switch-toggle-slider .switch-on {
    inset-inline-start: 0
}

.switch-input:checked ~ .switch-toggle-slider .switch-off {
    color: rgba(0,0,0,0);
    inset-inline-start: 100%
}

.switches-stacked::after {
    display: block;
    clear: both;
    content: ""
}

.switches-stacked .switch {
    display: block;
    margin-inline: 0
}

    .switches-stacked .switch:not(:last-child) {
        margin-block-end: .75rem
    }

.switch-square, .switch-square .switch-toggle-slider {
    border-radius: .375rem
}

    .switch-square .switch-toggle-slider::after {
        border-radius: calc(0.375rem - 2px)
    }

.switch-input:disabled ~ .switch-toggle-slider {
    opacity: .45
}

.switch-input:disabled ~ .switch-label {
    color: var(--bs-secondary-color)
}

.switch-sm {
    font-size: .75rem;
    line-height: 1.6;
    min-block-size: 1.125rem
}

    .switch-sm .switch-input ~ .switch-label {
        padding-inline-start: 2.375rem
    }

    .switch-sm .switch-toggle-slider {
        block-size: 1.125rem;
        inline-size: 1.875rem;
        line-height: 1.125rem
    }

        .switch-sm .switch-toggle-slider .icon-base {
            position: relative;
            block-size: .75rem;
            font-size: .75rem;
            inline-size: .75rem;
            inset-block-start: -2px
        }

    .switch-sm .switch-label {
        inset-block-start: 0
    }

    .switch-sm .switch-toggle-slider::after {
        block-size: 13px;
        inline-size: 13px
    }

    .switch-sm .switch-on {
        padding-inline: .085rem .955rem
    }

    .switch-sm .switch-off {
        padding-inline-start: .955rem
    }

.switch-lg {
    font-size: 1.0625rem;
    line-height: 1.47;
    min-block-size: 1.75rem
}

    .switch-lg .switch-input ~ .switch-label {
        padding-inline-start: 3.75rem
    }

    .switch-lg .switch-toggle-slider {
        block-size: 1.75rem;
        inline-size: 3.25rem;
        line-height: 1.75rem
    }

        .switch-lg .switch-toggle-slider .icon-base {
            position: relative;
            block-size: 1.0625rem;
            font-size: 1.0625rem;
            inline-size: 1.0625rem;
            inset-block-start: -2px
        }

    .switch-lg .switch-label {
        inset-block-start: .0940625rem
    }

    .switch-lg .switch-toggle-slider::after {
        block-size: 21px;
        inline-size: 21px
    }

    .switch-lg .switch-on {
        padding-inline: .125rem 1.5rem
    }

    .switch-lg .switch-off {
        padding-inline-start: 1.5rem
    }

.switch .valid-feedback, .switch .invalid-feedback {
    padding-inline-start: .5rem
}

.switch-primary .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-primary);
    --bs-switch-border-color: var(--bs-primary);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-primary-rgb), .3)
}

.switch-outline-primary .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-primary);
    --bs-switch-border-color: var(--bs-primary);
    --bs-switch-holder-bg: var(--bs-primary)
}

.switch-secondary .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-secondary);
    --bs-switch-border-color: var(--bs-secondary);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-secondary-rgb), .3)
}

.switch-outline-secondary .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-secondary);
    --bs-switch-border-color: var(--bs-secondary);
    --bs-switch-holder-bg: var(--bs-secondary)
}

.switch-success .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-success);
    --bs-switch-border-color: var(--bs-success);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-success-rgb), .3)
}

.switch-outline-success .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-success);
    --bs-switch-border-color: var(--bs-success);
    --bs-switch-holder-bg: var(--bs-success)
}

.switch-info .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-info);
    --bs-switch-border-color: var(--bs-info);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-info-rgb), .3)
}

.switch-outline-info .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-info);
    --bs-switch-border-color: var(--bs-info);
    --bs-switch-holder-bg: var(--bs-info)
}

.switch-warning .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-warning);
    --bs-switch-border-color: var(--bs-warning);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-warning-rgb), .3)
}

.switch-outline-warning .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-warning);
    --bs-switch-border-color: var(--bs-warning);
    --bs-switch-holder-bg: var(--bs-warning)
}

.switch-danger .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-danger);
    --bs-switch-border-color: var(--bs-danger);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-danger-rgb), .3)
}

.switch-outline-danger .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-danger);
    --bs-switch-border-color: var(--bs-danger);
    --bs-switch-holder-bg: var(--bs-danger)
}

.switch-light .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-light);
    --bs-switch-border-color: var(--bs-light);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-light-rgb), .3)
}

.switch-outline-light .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-light);
    --bs-switch-border-color: var(--bs-light);
    --bs-switch-holder-bg: var(--bs-light)
}

.switch-dark .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-dark);
    --bs-switch-border-color: var(--bs-dark);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-dark-rgb), .3)
}

.switch-outline-dark .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-dark);
    --bs-switch-border-color: var(--bs-dark);
    --bs-switch-holder-bg: var(--bs-dark)
}

.switch-gray .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-bg: var(--bs-gray);
    --bs-switch-border-color: var(--bs-gray);
    --bs-switch-box-shadow: 0 .125rem .375rem 0 rgba(var(--bs-gray-rgb), .3)
}

.switch-outline-gray .switch-input:checked ~ .switch-toggle-slider {
    --bs-switch-color: var(--bs-gray);
    --bs-switch-border-color: var(--bs-gray);
    --bs-switch-holder-bg: var(--bs-gray)
}
.mb-7 {
    margin-block-end: 1.75rem !important
}
.mb-10 {
    margin-block-end: 2.5rem !important;
}
.me-0 {
    margin-inline-end: 0 !important
}
.ms-n9 {
    margin-inline-start: -3rem !important
}
.ms-n10 {
    margin-inline-start: -2.2rem !important
}
.ms-n11 {
    margin-inline-end: -5rem !important
}
.mt-n5 {
    margin-block-start: -1.25rem !important
}
.pb-6 {
    padding-block-end: 1.5rem !important
}
.pt-10 {
    padding-block-start: 2.5rem !important
}
.pt-12 {
    padding-block-start: 3rem !important
}
.gap-2 {
    gap: .5rem !important
}
.ps-sm-12 {
    padding-inline-start: 3rem !important;
}
.flex-wrap {
    flex-wrap: wrap !important
}
.align-items-center {
    align-items: center !important;
}
.justify-content-center {
    justify-content: center !important;
}
.d-flex {
    display: flex !important;
}
.bg-label-primary-hint {
    background-color: color-mix(in sRGB, var(--bs-paper-bg) var(--bs-bg-label-tint-amount), var(--bs-primary)) !important;
    color: var(--bs-primary) !important;
}

@media(min-width: 576px) {
    .d-sm-flex {
        display: flex !important;
    }
    .ps-sm-12 {
        padding-inline-start: 3rem !important;
    }
    .ms-sm-12 {
        margin-inline-start: 3rem !important;
    }
}