main.settings {
    background: linear-gradient(180deg, rgba(219, 222, 255, 0.50) -8.82%, rgba(146, 205, 218, 0.50) 100%);

    .settings-wrap {
        width: calc(100% - 40px);
        max-width: 1240px;
        margin: 40px auto;
    }

    .settings-title {
        color: #878CA1;
        text-align: center;
        font-size: 18px;
        font-style: normal;
        font-weight: 500;
        line-height: 140%;
        letter-spacing: 0.18px;
    }

    .settings-sidebar {
        max-width: 350px;
        width: 100%;
        align-self: flex-start;

        @media (max-width: 720px) {
            & {
                max-width: 100%;
            }
        }
    }
    
    .settings-block {
        margin-top: 40px;
        display: flex;
        column-gap: 30px;
    }

    .settings-menu {
        display: flex;
        flex-direction: column;
        row-gap: 15px;
        border-radius: 20px;
        background-color: #ffffff;
        padding: 20px 12px;
        

        .menu-item {
            display: flex;
            align-items: center;
            min-height: 42px;
            padding: 8px 8px;
            color: #0A122F;
            fill: #878CA1;
            font-size: 16px;
            font-style: normal;
            font-weight: 400;
            line-height: 140%;
            border-radius: 10px;
            column-gap: 10px;
            position: relative;
            transition: all .3s ease;

            img {
                width: 26px;
                height: 26px;
            }

            .wetalk-icon {
                margin-left: auto;
            }

            &.active {
                background-color: rgba(167, 174, 255, 0.20);
            }

            &:not(:last-child):before {
                content: "";
                display: block;
                position: absolute;
                height: 1px;
                width: calc(100% - 16px);
                background: rgba(135, 140, 161, 0.10);
                bottom: -8px;
                left: 0;
            }
        }
    }

    .sidebar-buttons {
        margin-top: 30px;
        display: flex;
        flex-direction: column;
        row-gap: 15px;

        .button-logout {
            color: #0A122F;
            text-align: center;
            font-family: 'Poppins';
            font-size: 16px;
            font-style: normal;
            font-weight: 500;
            line-height: 135%;
            display: flex;
            align-items: center;
            column-gap: 10px;
            border-radius: 20px;
            background-color: #ffffff;
            min-height: 58px;
            padding: 10px 15px;
            justify-content: center;
            cursor: pointer;
            border: none;
            width: 100%;

            img {
                width: 18px;
                height: 18px;
            }
        }

        .button-delete {
            color: #878CA1;
            text-align: center;
            font-family: 'Poppins';
            font-size: 16px;
            font-style: normal;
            font-weight: 400;
            line-height: 135%;
            display: flex;
            align-items: center;
            column-gap: 10px;
            border-radius: 20px;
            background-color: rgba(255, 255, 255, 0.40);
            min-height: 58px;
            padding: 10px 15px;
            justify-content: center;
            cursor: pointer;
            border: none;
            width: 100%;

            img {
                width: 18px;
                height: 18px;
            }
        }
    }


    .avatar {

        label {
            position: relative;

            .avatar-image {
                width: 120px;
                height: 120px;
            }

            .avatar-load-link {
                position: absolute;
                bottom: 0;
                right: 0px;
                display: flex;
                align-items: center;
                justify-content: center;
                fill: none;
                stroke: #E0EAFB;
                width: 36px;
                height: 36px;
                background-color: #878CA1;
                border-radius: 50%;
                border: solid 2px #E0EAFB;
                transition: all .3s ease;

                &:hover {
                    background-color: #5a6078;
                }
            }
        }
    }

    .avatar.sidebar-avatar {
        margin-bottom: 30px;
        display: flex;
    }

    .settings-body {
        width: 100%;
        max-width: 480px;

        .section {
            width: 100%;
            flex: 1;
            display: flex;
            flex-direction: column;

            .section-form {
                width: 100%;
                flex: 1;
                display: flex;
                flex-direction: column;

                .form-button {
                    width: 100%;
                    margin-top: auto;
                    display: none;

                    .button {
                        min-height: 52px;
                        width: 100%;
                    }

                    @media (max-width: 720px) {
                        & {
                            display: block;
                        }
                    }
                }

                .form-wrap {
                    .form-button {
                        display: block;
                        margin-top: 20px;
                    } 
                }
            }

            .settings-form {
                width: 100%;
                flex: 1;
                display: flex;
                flex-direction: column;
                row-gap: 30px;

                @media (max-width: 720px) {
                    & {
                        row-gap: 20px;
                    }
                }
            }

            .products-form {
                width: 100%;
                flex: 1;
                display: flex;
                flex-direction: column;
                row-gap: 30px;
            }

            .form-wrap {
                width: 100%;
                background-color: #ffffff;
                border-radius: 20px;
                padding: 20px 20px;
                margin-top: auto;
            }

            .section-title {
                font-size: 22px;
                font-weight: 500;
                line-height: 140%;
                color: #0A122F;
                margin-bottom: 8px;
            }

            .section-description {
                font-size: 14px;
                font-weight: 400;
                line-height: 140%;
                color: #878CA1;
                margin-bottom: 32px;
                text-align: center;
                
                
                
                

                @media (max-width: 620px) {
                    & {
                        margin-bottom: 20px;
                    }
                }
            }

            .paywall-wrap {
                .paywall-block {
                    .paywall-header {
                        margin-bottom: 32px;

                        .paywall-title {
                            font-size: 22px;
                            font-weight: 500;
                            line-height: 140%;
                            color: #0A122F;
                            margin-bottom: 8px;
                        }

                        .paywall-description {
                            font-size: 14px;
                            font-weight: 400;
                            line-height: 140%;
                            color: #878CA1;
                        }
                    }

                    .paywall-body {
                        .form-buttons {
                            width: 100%;
                            margin-top: auto;
                            display: flex;
                            flex-direction: column;
                            row-gap: 12px;

                            .button {
                                min-height: 52px;
                                width: 100%;
                            }
                        }
                    }

                    .paywall-info {
                        border-radius: 20px;
                        background-color: rgba(255, 255, 255, 0.60);
                        max-width: 350px;
                        padding: 24px 40px 40px;
                        
                        .paywall-info-plan {
                            margin-bottom: 40px;
                            
                            .paywall-plan-text {
                                color: #0A122F;
                                text-align: center;
                                font-size: 22px;
                                font-style: normal;
                                font-weight: 500;
                                line-height: 140%;
                                letter-spacing: 0.18px;
                                margin-bottom: 14px;
                            }
                            
                            .paywall-plan-title {
                                color: #ffffff;
                                background-color: #5775CD;
                                text-align: center;
                                font-size: 32px;
                                font-style: normal;
                                font-weight: 500;
                                line-height: 130%;
                                letter-spacing: -0.32px;
                                border-radius: 10px;
                                min-height: 54px;
                                padding: 6px 20px;
                            }
                        }

                        .paywall-info-control {
                            .paywall-info-total {
                                color: #878CA1;
                                text-align: center;
                                font-size: 14px;
                                font-style: normal;
                                font-weight: 500;
                                line-height: 130%;
                                letter-spacing: 0.14px;
                                margin-bottom: 8px;

                                b {
                                    font-weight: 500;
                                    color: #0A122F;
                                }
                            }

                            .paywall-info-access-date {
                                color: #878CA1;
                                text-align: center;
                                font-size: 14px;
                                font-style: normal;
                                font-weight: 500;
                                line-height: 130%;
                                letter-spacing: 0.14px;
                                

                                b {
                                    font-weight: 500;
                                    color: #0A122F;
                                }
                            }

                            .paywall-info-payment-date {
                                color: #878CA1;
                                text-align: center;
                                font-size: 14px;
                                font-style: normal;
                                font-weight: 500;
                                line-height: 130%;
                                letter-spacing: 0.14px;
                                margin-top: 8px;
                                

                                b {
                                    font-weight: 500;
                                    color: #0A122F;
                                    display: block;
                                }
                            }
                            
                            .paywall-info-link {
                                display: flex;
                                justify-content: center;
                                margin-top: 24px;
                                
                                button {
                                    color: #3949F5;
                                    font-family: Poppins;
                                    text-align: center;
                                    font-size: 16px;
                                    font-style: normal;
                                    font-weight: 500;
                                    line-height: 140%;
                                    text-decoration: underline;
                                    margin: 0;
                                    padding: 0;
                                    border: none;
                                    background: none;

                                    &:hover {
                                        text-decoration: none;
                                    }
                                }
                            }
                        }

                        @media (max-width: 720px) {
                            & {
                                max-width: 100%;
                            }
                        }
                    }

                    .paywall-terms {
                        color: #ffffff;
                        font-size: 12px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: 120%;
                        text-align: center;
                        max-width: 350px;
                        margin-top: 40px;

                        a {
                            color: inherit;
                            white-space: nowrap;
                            text-decoration: underline;
                        }

                        @media (max-width: 720px) {
                            & {
                                max-width: 100%;
                            }
                        }
                    }
                }
            }

            .whatsapp {
                color: #0A122F;
                text-align: center;
                font-size: 14px;
                font-style: normal;
                font-weight: 500;
                line-height: 130%;
                letter-spacing: 0.14px;
                display: flex;
                justify-content: center;
                align-items: center;
                column-gap: 8px;

                a {
                    display: inline-flex;
                    align-items: center;
                    column-gap: 6px;
                    color: #4DAE78;
                    text-align: center;
                    font-size: 14px;
                    font-style: normal;
                    font-weight: 500;
                    line-height: 130%;
                    letter-spacing: 0.14px;
                    text-decoration: underline;

                    &:hover {
                        text-decoration: none;
                    }
                }
            }

            .section-footer {
                margin-top: 20px;
            }
        }

        .avatar.form-avatar {
            display: flex;
            margin-bottom: 20px;

            label {
                position: relative;

                .avatar-image {
                    width: 88px;
                    height: 88px;
                }
            }
        }

        .fields {
            display: flex;
            flex-direction: column;
            row-gap: 20px;

            .field {
                position: relative;
                
                label {
                    display: flex;
                    flex-direction: column;

                    .field-name {
                        color: #0A122F;
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: 130%;
                        letter-spacing: 0.14px;
                        display: flex;
                        align-items: center;
                        column-gap: 10px;
                        margin-bottom: 10px;

                        img {
                            width: 20px;
                            height: 20px;
                        }
                    }
                }

                input:not([type="file"]),
                select,
                textarea {
                    border-radius: 4px;
                    border: 1px solid #DDDFE4;
                    min-height: 48px;
                    background-color: transparent;
                    color: #0A122F;
                    fill: #0A122F;
                    font-size: 14px;
                    font-style: normal;
                    font-weight: 500;
                    line-height: 130%;
                    letter-spacing: 0.14px;
                    padding: 10px 15px;
                    
                    &:read-only {
                        color: #878CA1;
                    }
                }


                .my-select-active {
                    border-radius: 4px;
                    border: 1px solid #DDDFE4;
                    min-height: 48px;
                    background-color: transparent;
                    color: #0A122F;
                    fill: #0A122F;
                    font-size: 14px;
                    font-style: normal;
                    font-weight: 500;
                    line-height: 130%;
                    letter-spacing: 0.14px;

                    &[disabled] {
                        color: #878CA1;
                    }
                }

                .my-select-items {
                    padding: 0;
                    border-radius: 10px;
                    border: 1px solid #DDDFE4;
                }

                .my-select-items::-webkit-scrollbar {
                    width: 4px;
                    height: 4px;
                }

                .my-select-items::-webkit-scrollbar-track {
                    background: #f0f0f0;
                    border-radius: 10px;
                }

                .my-select-items::-webkit-scrollbar-thumb {
                    background: #c1c1c1;
                    border-radius: 10px;
                }

                .my-select-items::-webkit-scrollbar-thumb:hover {
                    background: #a0a0a0;
                }

                .my-select-search input[type="text"] {
                    min-height: 40px;
                    border-radius: 0;
                    border: none;
                    text-align: left;
                    padding: 14px 24px;
                    border-bottom: 1px solid #DDDFE4;
                    width: 100%;
                }

                .trigger-view-password {
                    height: 48px;
                    top: 29px;
                }
            }

            @media (max-width: 620px) {
                & {
                    row-gap: 10px;

                    .field {

                         label {
                            .field-name {
                                font-size: 12px;
                            }
                         }
                        
                        input:not([type="file"]),
                        select,
                        textarea {
                            min-height: 42px;
                        }

                        .my-select-active {
                            min-height: 42px;
                        }
                    }
                }
            }
        }


        .options {
            display: flex;
            flex-direction: column;
            row-gap: 30px;

            .option {

                label {
                    display: flex;
                    align-items: flex-start;
                }
                

                .option-content {
                    display: flex;
                    flex-direction: column;
                    max-width: 200px;
                    row-gap: 6px;

                    .option-name {
                        color: #0A122F;
                        font-size: 16px;
                        font-style: normal;
                        font-weight: 500;
                        line-height: 135%;
                    }

                    .option-description {
                        color: #878CA1;
                        font-size: 14px;
                        font-style: normal;
                        font-weight: 400;
                        line-height: 140%;
                    }
                }

                .option-field {
                    margin-left: auto;
                    
                    input {
                        display: none;
                    }

                    .option-switch {
                        display: flex;
                        width: 38px;
                        height: 20px;
                        background-color: #878CA1;
                        border-radius: 100px;
                        position: relative;
                        transition: background-color .3s ease;

                        &:before {
                            content: "";
                            display: block;
                            height: calc(100% - 4px);
                            width: 18px;
                            background-color: #ffffff;
                            position: absolute;
                            left: 2px;
                            top: 2px;
                            border-radius: 100px;
                            transition: left .3s ease;
                        }
                    }

                    input:checked {
                        & + .option-switch {
                            background-color: #3949F5;

                            &:before {
                                left: calc(100% - 20px);
                            }
                        }
                    }
                }
            }
        }

        .settings-close {
            display: none;

            .close-section {
                display: inline-flex;
                align-items: center;
                column-gap: 20px;
                color: #0A122F;
                font-size: 16px;
                font-style: normal;
                font-weight: 500;
                line-height: 135%;
                transition: all .3s ease;
            }

            @media (max-width: 720px) {
                & {
                    display: block;

                    .close-section {
                        justify-content: space-between;
                        display: flex;

                        &:after {
                            content: "";
                            display: block;
                            width: 32px;
                        }
                    }
                }
            }
        }

        @media (max-width: 720px) {
            & {
                position: fixed;
                top: 0;
                left: 100%;
                width: 100%;
                max-width: 100%;
                height: 100dvh;
                background: linear-gradient(180deg, #E4F3FB 0%, #E1E4F9 100%);
                display: flex;
                flex-direction: column;
                row-gap: 20px;
                overflow: auto;
                padding: 20px 20px 80px;
                transition: left .3s ease;
                
                
                
                
                
                
                
                
                
                

                &.open {
                    left: 0;
                }
            }
        }
    }

    .product-control {
        display: block;

        [type="radio"] {
            display: none;
        }

        &:not(:last-child) {
            margin-bottom: 16px;
        }

        .product {
            border-radius: 20px;
            background-color: #ffffff;
            border: solid 2px #ffffff;
            padding: 14px 20px;
            position: relative;
            transition: all .3s ease;
            

            .product-header {
                display: flex;
                justify-content: space-between;
                column-gap: 10px;
                margin-bottom: 6px;
            }

            .product-check {
                width: 22px;
                height: 22px;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                position: relative;
                border-radius: 50%;
                border: solid 2px #878CA1;
                
                
                
                                

                &:before {
                    content: "";
                    display: block;
                    background-image: url('../icons/product-check.svg');
                    position: absolute;
                    top: -2px;
                    left: -2px;
                    width: calc(100% + 4px);
                    height: calc(100% + 4px);
                    background-size: contain;
                    opacity: 0;
                    transition: all .3s ease;
                }
            }

            .product-title {
                color: #3949F5;
                font-size: 16px;
                font-style: normal;
                font-weight: 500;
                line-height: 140%;
                letter-spacing: -0.22px;
            }

            .product-description {
                color: #0A122F;
                font-size: 12px;
                font-style: normal;
                font-weight: 500;
                line-height: 130%;
                letter-spacing: 0.14px;
                border-bottom: solid 1px rgb(135 140 161 / 20%);
                padding-bottom: 10px;
                margin-bottom: 10px;
            }

            .product-guarantee {
                display: inline-flex;
                column-gap: 6px;
                align-items: center;
                color: #DDDFE4;
                fill: #DDDFE4;
                font-size: 12px;
                font-style: normal;
                font-weight: 400;
                margin-top: 10px;
            }

            .product-badges {
                color: #ffffff;
                text-align: center;
                font-size: 12px;
                font-style: normal;
                font-weight: 500;
                line-height: 120%;
                border-radius: 8px;
                border: 2px solid #ffffff;
                background-color: #3949F5;
                position: absolute;
                min-height: 26px;
                display: inline-flex;
                align-items: center;
                padding: 4px 12px;
                top: -8px;
                right: 60px;
                transition: all .3s ease;
            }

            .product-total {
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;
                column-gap: 20px;
                color: var(--SteelMist, #878CA1);
                font-size: 14px;
                font-style: normal;
                font-weight: 500;
                line-height: 130%;
                letter-spacing: 0.14px;
            }

            .product-price {
                display: inline-flex;
                align-items: center;
                column-gap: 3px;
                margin-bottom: 2px;
                
                
                

                .product-price-value {
                    color: #0A122F;
                    font-size: 22px;
                    font-style: normal;
                    font-weight: 500;
                    line-height: 140%;
                    letter-spacing: -0.22px;
                }

                .product-price-unit {
                    color: #0A122F;
                    font-size: 14px;
                    font-style: normal;
                    font-weight: 500;
                    line-height: 130%;
                    letter-spacing: 0.14px;
                }

                .product-price-separator {
                    color: #0A122F;
                    font-size: 14px;
                    font-style: normal;
                    font-weight: 500;
                    line-height: 130%;
                    letter-spacing: 0.14px;
                }
            }

            .product-gift {
                color: #5775CD;
                fill: #5775CD;
                font-size: 16px;
                font-style: normal;
                font-weight: 500;
                border-radius: 5px;
                background-color: #FFDD61;
                box-shadow: 0 1px 4px 0 rgba(29, 33, 45, 0.15), 0 6px 20px 0 rgba(29, 33, 45, 0.10);
                display: inline-flex;
                min-height: 34px;
                align-items: center;
                column-gap: 8px;
                padding: 2px 10px;
                position: absolute;
                top: -19px;
                right: -9px;
                transform: rotate(5deg);

                @media (max-width: 610px) {
                    & {
                        background-color: transparent;
                        color: #FFDD61;
                        fill: #FFDD61;
                        box-shadow: none;
                        position: static;
                        transform: none;
                        padding: 0;
                        border-top: solid 1px rgb(255 255 255 / 30%);
                        padding-top: 15px;
                        margin-top: 15px;
                        width: 100%;
                        border-radius: 0;
                    }
                }
            }
        }

        [type="radio"]:checked {
            &+.product {
                border-color: #3949F5;
                background-color: #DCDFFF;

                .product-discount {
                    color: #3949F5;
                    border-color: #3949F5;
                    background-color: #ffffff;
                }

                .product-check {
                    border-color: transparent;
                    
                    &:before {
                        opacity: 1;
                    }
                }
            }
        }
    }

    * {
        -webkit-tap-highlight-color: transparent;
        user-select: none;
        -ms-user-select: none;
        -moz-user-select: none;
        -webkit-user-select: none;
    }
}

.product-description {
    .product-description-header {
        color: #878CA1;
        font-size: 14px;
        font-style: normal;
        font-weight: 500;
        line-height: 130%;
        letter-spacing: 0.14px;
        margin-bottom: 8px;
    }
    
    .product-description-body {
        ul:not([class]) {
            margin: 0;
            
            li {
                color: #0A122F;
                font-size: 14px;
                font-style: normal;
                font-weight: 500;
                line-height: 130%;
                letter-spacing: 0.14px;
                padding-left: 18px;

                &:before {
                    width: 11px;
                    height: 8px;
                    left: 0;
                    top: 4px;
                }

                &:not(:last-child) {
                    margin-bottom: 6px;
                }
            }
        }
    }
}