.layout-config {
    position: fixed;
    padding: 0;
    top: 0;
    right: 0;
    width: 250px;
    z-index: 999;
    height: 100%;
    transform: translate3d(250px, 0px, 0px);
    @include transition(transform $transitionDuration);
    background-color:lighten($contentBgColor, 2%);
    box-shadow: 0 24px 64px -2px rgba(0, 0, 0, 0.02), 0 6px 16px -2px rgba(0, 0, 0, 0.06), 0 2px 6px -2px rgba(0, 0, 0, 0.08);
    
    &.layout-config-active {
        transform: translate3d(0px, 0px, 0px);

        .layout-config-content {
            .layout-config-button {
                i {
                    @include rotate(360deg);
                }
            }
        }
    }

    .layout-config-content {
        position: relative;
        height: 100%;

        > form {
            height: 100%;
        }

        .layout-config-form {
            overflow: auto;
            overflow-x: hidden;
        }   
        
        .layout-config-button {
            display: block;
            position: absolute;
            width: 52px;
            height: 52px;
            line-height: 52px;
            background-color: #2c84d8;
            background-color: var(--primary-dark-color, #2c84d8);
            text-align: center;
            top: 230px;
            left: -51px;
            z-index: -1;
            cursor: pointer;
            color: #ffffff;
            @include transition(background-color $transitionDuration);

            i {
                font-size: 32px;
                line-height: inherit;
                cursor: pointer;
                @include rotate(0deg);
                @include transition(transform 1s);
            }
        
            &:hover {
                background-color: #2873D3;
                background-color: var(--primary-color, #2873D3);
            }
        }

        .layout-config-header {
            padding: 18px 12px;
            margin-bottom: 12px;
            color: #ffffff;
            background-image: linear-gradient(180deg, #2873D3 10%, #2c84d8 100%);
            background-image: linear-gradient(180deg, var(--primary-dark-color, #2873D3) 10%, var(--primary-color, #2c84d8) 100%);

            > span {
                font-size: 12px;
                display: block;
                color: #ffffff;
                color: var(--primary-color-text, #ffffff);
            }
        }

        .layout-config-section {
            padding: 10px 12px;

            .section-name {
                font-weight: 500;
                font-size: 12px;
                display: block;
                color: $textColor;
            }

            &.dark {
                @include flex();
                @include flex-align-center();

                .section-name {
                    margin-right: 18px;
                }

                .ui-inputswitch {
                    .ui-inputswitch-on,
                    .ui-inputswitch-off {
                        padding: 0;
                    }
                }
            }

            &.colors {
                .layout-config-colors {
                    padding: 0 10px;
                    margin-top: 3px;

                    .col-fixed {
                        padding: .5em;
                    }
                }
            }

            &.options {
                .layout-config-options {
                    margin-top: 3px;
                    .ui-selectoneradio {
                        width: 100%;
                        padding: 0 10px;

                        label {
                            font-size: 12px;
                            margin: 0;
                            margin-left: 6px;
                        }
                    }
                }
                
            }

            a {
                @include flex-center();
                @include flex-direction-column();
                overflow: hidden;
                @include transition(transform $transitionDuration);
                position: relative;
                color:$textColor;
                text-transform: capitalize;
                

                &:hover {
                    @include scale(1.1);
                }

                &.layout-config-option {
                    .layout-config-option-text {
                        margin-top: .2em;
                    }

                    .layout-config-option-color {
                        width: 24px;
                        height: 24px;
                        @include border-radius(4px);
                        position: relative;
                        overflow: hidden;
                        border: 1px solid rgba(0,0,0,.1);
                        
                        .layout-config-option-accentcolor {
                            display: block;
                            width: 18px;
                            height: 28px;
                            position: absolute;
                            bottom: -10px;
                            right: -7px;
                            transform: rotate(45deg);
                        }
                    }

                    .layout-config-option-check-mask {
                        position: absolute;
                        top: 0;
                        left: 0;
                        width: 100%;
                        height: 100%;
                        pointer-events: none;
                        @include flex-center();

                        i {
                            @include flex-center();
                            font-size: 12px;
                            color: $primaryColor;
                            @include border-radius(50%);
                            background-color: #ffffff;
                            width: 16px;
                            height: 16px;
                            box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
                            z-index: 1;
                        }
                    }
                }
            }
        }


    }
}

.blocked-scroll-config{
    overflow: hidden;
}

.layout-rtl {
    .layout-config {
        right: auto;
        left: 0;
        transform: translate3d(-250px, 0px, 0px);

        &.layout-config-active {
            transform: translate3d(0px, 0px, 0px);
            
            .layout-config-content {
                .layout-config-button {
                    i {
                        @include rotate(360deg);
                    }
                }
            }
        }

        .layout-config-content {
            .layout-config-button {
                left: auto;
                right: -51px;
            }
            .layout-config-section {
                &.dark {
                    .section-name {
                        margin-right: 0px;
                        margin-left: 18px;
                    }
                }
                &.options {
                    .layout-config-options {
                        .ui-selectoneradio {
                            label {
                                margin-left: 0px;
                                margin-right: 6px;
                            }
                        }
                    }
                    
                }
            }
        }
    }
}

@media (max-width: 992px) {
    .layout-config {
        height: 100%;
        width: 70vw;
        transform: translate3d(70vw, 0px, 0px);
        
        &.layout-config-active {
            transform: translate3d(0px, 0px, 0px);
        }

        .layout-config-button {
            left: auto;
            right: -52px;
        }
    }

    .layout-rtl {
        .layout-config {
            height: 100%;
            width: 70vw;
            transform: translate3d(-70vw, 0px, 0px);
            
            &.layout-config-active {
                transform: translate3d(0px, 0px, 0px);
            }
        }
    }
}

@media (max-width: 640px) {
    .layout-config {
        .ui-tabs.ui-tabs-top {
            .ui-tabs-panels {
                .grid {
                    @include flex-justify-center();
                }

                .layout-config-palette {
                    .layout-config-selected-palette {
                        width: 60px;
                        height: 60px;
                    }
                }
            }
        }
    }
}