:root {
    /* Unique values per language */
    --Family-Font-Name: 'Montserrat', sans-serif;
    --Font-Direction: ltr;
    --ScaleX: 1; /* used to flip icons ltr or rtl */
    /* End Unique values per language */

    /* Navbar */
    --Navbar-Background: #F1F2F4;
    --Navbar-Height: 60px;
    --Mobile-Burger-Menu-color: #000000;
    --Mobile-QR-code-color: #000000;
    --Mobile-QR-code-close-coler: #FFF;
    --Mobile-Back-Arrow-Icon-color: #006AFF;
    --Mobile-Navigation-title-color: #000000;
    --Mobile-Button-background-color: #006AFF;
    --Mobile-Button-text-color: #FFFFFF;

    /* Control Sidebar */
    --Search-text-color: #949494;
    --Search-bar-Selected-border-Hover-color: #006AFF;
    --Search-bar-Typing-text-color: #000000;

    --Post-indicator-selected-icon-color: #006AFF;
    --Post-indicator-selected-text-color: #000000;

    --Post-indicator-unselected-icon-color: #949494;
    --Post-indicator-unselected-text-color: #949494;

    --Post-indicator-unselected-Hover-icon-color: #000000;
    --Post-indicator-unselected-Hover-text-color: #000000;

    /* Sidebar */
    --Sidebar-gap: 25px; /* 63px */
    --SideBar-Bg: #F5F5F7;
    --Pages-selected: #000000;
    --Pages-unselected: #949494;

    --Language-Text: #000;
    --Website-Name: #000000;
    --Welcome-Message: #000000;

    --Social-media-Background-color: #006AFF;
    --Footer-Poweredby: #949494;
    --Footer-Catalosite: #000000;

    /* Post */
    --Post-Button-text: #FFFFFF;
    --Post-Button-text-hover: #FFFFFF;
    --Post-Button-background-color: #006AFF;
    --Post-Button-background-hover-color: #FF5A5F;
    --Post-Title: #000000;
    --Post-description: #000000;

    /* Contact Icons */
    --Contact-Icon-Width: 45px;
}

/**, *::before, *::after {*/
/*    box-sizing: border-box !important;*/
/*    outline: 1px solid lime !important;*/
/*}*/

/*.main-header *, .main-header::before, .main-header::after {*/
/*    box-sizing: border-box !important;*/
/*    outline: 1px solid lime !important;*/
/*}*/

body {
    touch-action: manipulation !important;
}

.divider-border-color {
    border-color: #BFBFBF !important;
}

.content-wrapper {
    height: calc(100% - var(--Navbar-Height)); /* Adjust based on your navbar height */
    overflow: hidden;
}

.content.container-fluid {
    height: 100%;
}

#profile-app-body {
    height: 100%;

    > .row {
        height: 100%;
    }

    /* Left static section */

    .page-section-image {
        height: calc(100svh - var(--Navbar-Height));
        /*height: calc(100dvh - var(--Navbar-Height));*/
        position: relative;
        overflow: hidden;

        img.page-image {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
    }
}

.page-section-image {
    .page-cover-overlay {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%; /* Full height overlay */
        background: rgba(0, 0, 0, 0.5); /* Black overlay with 60% opacity */
        display: flex;
        flex-direction: column-reverse; /* Stack from bottom to top */
        justify-content: flex-start; /* Align sections at the bottom */

        .page-cover-name {
            color: #FFF;
            font-family: var(--Family-Font-Name), serif !important;
            font-size: 50px;
            font-style: normal;
            font-weight: 900;
            line-height: 60px; /* 142.857% */
            text-transform: uppercase;
        }

        .page-cover-qrcode {
            svg {
                background: white;
                padding: 7px;
            }
        }
    }

    .page-cover-copy-write-one-line {
        * {
            color: #FFF;
            font-family: var(--Family-Font-Name), serif !important;
            font-size: 12px;
            font-style: normal;
            font-weight: 300;
            line-height: 24px;
            text-transform: uppercase;
        }

        .poweredBy {
            color: #FFF;
            font-family: var(--Family-Font-Name), serif !important;
            font-size: 12px;
            font-style: normal;
            font-weight: 700;
            line-height: 24px;
            text-transform: uppercase;
        }
    }
}

.preview-mode-container {
    /*width: 406px !important;*/
    height: 57px !important;
    flex-shrink: 0;
    border-radius: 5px;
    /*noinspection CssNonIntegerLengthInPixels*/
    border: 0.4px solid #BFBFBF;
    background: #FFF;
    box-shadow: 2px 4px 4px 0 rgba(0, 0, 0, 0.08);

    .mode-buttons {
        display: flex;
        align-content: center;
        justify-content: center;
        flex-wrap: wrap;

        .mode-button {
            width: 130px;
            height: 32px;
            border-radius: 3px;
            color: #006AFF;
            font-family: Inter, serif;
            font-size: 16px;
            font-style: normal;
            font-weight: 700;
            line-height: 14px;
            text-transform: capitalize;
            border: none;
            cursor: pointer;
            display: flex;
            justify-content: center; /* Centers horizontally */
            align-items: center; /* Centers vertically */
        }

        .preview-mode {
            background: #E5F5FF;

        }

        .edit-mode {
            background: transparent;
            color: #000;
            /*noinspection CssNonIntegerLengthInPixels*/
            border: 0.1px solid lightgrey;
        }
    }

    .device-icons {
        display: flex;
        align-items: center;

        .device-icon {
            svg {
                background: transparent;
                fill: #000000;
                padding: 4px;
                height: 40px;
                width: auto;
                cursor: pointer;
            }
        }

        .device-icon-active {
            svg {
                background: #E5F5FF !important;
                fill: #006AFF !important;
            }
        }
    }

    .device-divider {
        width: 1px;
        height: 34px;
        background: #BFBFBF;
        margin: 0 10px;
    }
}

.floating-edit {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%); /* Center horizontally */
    z-index: 9999;
    text-align: center;
    opacity: 0.9;

    display: flex;
    justify-content: center;
}

.chat-container {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 9999;
    text-align: center;
    opacity: 0.9;
    /*border: 1px solid red;*/

    .chatBtn {
        width: var(--Contact-Icon-Width);
        height: var(--Contact-Icon-Width);
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        border: none;
        background-color: var(--Social-media-Background-color);
        cursor: pointer;
        padding-top: 3px;
        /*box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.164);*/
        filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.2));
        background-size: 300%;
        background-position: left;
        transition-duration: 1s;

        &:hover {
            transition-duration: 1s;
            background-color: #046bda;
        }
    }

    .contact-icons {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom: 10px;
        position: absolute;
        bottom: 50px;
        right: 0;
        opacity: 0;
        pointer-events: none;
        transform: translateY(20px);
        transition: all 0.3s ease-in-out;
        /*border: 1px solid blue;*/
        width: var(--Contact-Icon-Width);
    }

    .contact-icons.show {
        opacity: 1;
        pointer-events: auto;
        transform: translateY(0);
    }

    .contact-icon {
        width: var(--Contact-Icon-Width);
        height: var(--Contact-Icon-Width);
        background-color: var(--Social-media-Background-color);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 10px;
        font-size: 24px;
        transition: transform 0.3s ease;
    }

    .profile-sidebar-socials-icon {
        /*box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.164);*/
        filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.2));

        svg {
            fill: var(--Social-media-Background-color);
            width: var(--Contact-Icon-Width);
            height: var(--Contact-Icon-Width);

            path {
                fill: white;
            }
        }
    }
}

.transparent-scroll {
    overflow: hidden;

    /*scrollbar-color: rgba(0, 0, 0, 0.3) transparent;*/
    scrollbar-color: #fff transparent;
    scrollbar-width: thin;

    /* Make the background transparent */
    background-color: transparent;

    /* Optional: Style the scrollbar for WebKit browsers (Chrome, Safari) */
    /* Make the scrollbar thumb (the draggable part) semi-transparent */

    &::-webkit-scrollbar {
        width: 10px;
    }

    &::-webkit-scrollbar-track {
        background: transparent;
    }

    &::-webkit-scrollbar-thumb {
        background-color: #fff;
        border-radius: 10px;
    }
}

.profile-control-sidebar-back-icon {
    /*position: fixed;*/
    /*bottom: 20px;*/
    /*right: 20px;*/
    /*z-index: 50;*/
}

.main-header.profile-navbar {
    background: var(--Navbar-Background);
    height: var(--Navbar-Height);
    flex-shrink: 0;
    padding: 0 16px;

    .slick-arrow {
        cursor: pointer;
        background: var(--Navbar-Background);
        padding: 2px 10px;
    }

    .slick-disabled {
        opacity: 0 !important;
    }

    .profile-navbar-section {
        display: flex;
        align-items: center;
        gap: 6px;

        .profile-navbar-img {
            width: 32px;
            height: 32px;
            flex-shrink: 0;
        }

        .profile-navbar-name {
            color: var(--Website-Name);
            font-family: var(--Family-Font-Name), serif;
            font-size: 16px;
            font-style: normal;
            font-weight: 700;
            line-height: 35px;

            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            max-width: calc(100vw - 210px) !important;
        }
    }

    .profile-navbar-share {
        width: 24px;
        height: 24px;
        flex-shrink: 0;
        fill: var(--Mobile-QR-code-color);
    }

    .profile-navbar-burger {
        /*padding-left: 20px;*/
        width: 24px;
        height: 24px;
        flex-shrink: 0;
        fill: var(--Mobile-Burger-Menu-color);
    }

    .nav-arrow {
        border: none;
        cursor: pointer;
        padding: 5px 15px;
        z-index: 2;
        background: var(--Navbar-Background) !important;
    }

    .left-arrow {
        position: absolute;
        left: 0;
        /*display: none; !* Initially hidden, JavaScript controls visibility *!*/
    }

    .right-arrow {
        position: absolute;
        right: 0;
        /*display: none; !* Initially hidden, JavaScript controls visibility *!*/
    }

    .pages-container {
        display: flex; /* Arrange items in a row */
        overflow-x: hidden; /* Enable horizontal scrolling */
        scroll-behavior: smooth;
        white-space: nowrap; /* Prevent line breaks */
        /*gap: 10px; !* Add some spacing between links *!*/
        scrollbar-width: thin; /* Firefox scrollbar */
        width: 100%;
        max-width: 100%; /* Fit within the div */

        .profile-navbar-page {
            color: #949494;
            font-family: var(--Family-Font-Name), serif;
            font-size: 14px;
            font-style: normal;
            font-weight: 400;
            line-height: 14px;

            flex: 0 0 auto; /* Prevent shrinking */
            padding: 8px 0;
            text-decoration: none;
            border-radius: 5px;
            transition: 0.3s;

            &.page-selected {
                color: #000;
                font-weight: 700;
            }
        }

        .page-left, .page-right {
            cursor: pointer;
        }
    }

    .search-container {
        /*position: absolute;*/
        display: inline-block;
        margin-left: -10px;

        .search-icon {
            cursor: pointer;
            z-index: 1;
        }

        .search-input {
            width: 368px;
            height: 52px;
            transition: width 0.3s ease-in-out;
            overflow: hidden;
            padding: 10px 120px 10px 40px;
            outline: none;
            display: none;

            color: #949494;
            font-family: var(--Family-Font-Name), serif;
            font-size: 14px;
            font-style: normal;
            font-weight: 400;
            line-height: normal;

            background: #FFF;
            border-radius: 10px;
            border: 1px solid #EEE;
        }

        .search-navigation {
            position: absolute;
            right: 10px;
            top: 50%;
            transform: translateY(-50%);
            display: none;
            gap: 15px;

            .search-count {
                color: #949494;
                font-family: var(--Family-Font-Name), serif;
                font-size: 16px;
                font-style: normal;
                font-weight: 400;
                line-height: normal;
            }

            * {
                cursor: pointer;
                display: none;
            }

            .search-divider {
                cursor: default !important;
                height: 40px;
            }
        }

        &.expanded {

            position: absolute;
            /*top: 11px;*/
            top: 70px;
            /*left: 30%;*/
            z-index: 2;

            .search-icon {
                margin-top: 0;
                position: absolute;
                left: 10px;
                top: 50%;
                transform: translateY(-50%);
                cursor: pointer;
                z-index: 1;
            }

            .search-input {
                display: block;
            }

            .search-navigation * {
                cursor: pointer;
                display: block;
            }

            .search-navigation {
                display: block;
            }
        }
    }

    .div2:has(.search-container.expanded) {
        .search-area {
            display: block;
            width: 8px;
        }
    }

    .div2:not(:has(.search-container.expanded)) {
        .search-area {
            display: none;
            width: 0;
        }
    }
}

.search-highlight {
    background-color: yellow;
    font-weight: bold;
}

.search-highlight.current-match {
    background-color: orange; /* Indicate the currently selected match */
}

.main-sidebar.profile-sidebar {
    background: var(--SideBar-Bg);
    display: flex;
    flex-direction: column;
    height: 100svh !important;
    /*height: 100dvh !important;*/
    padding: 16px 16px 16px 16px; /*30px 16px 30px 16px;*/
    /*overflow: scroll;*/ /* For testing only */

    /* Section 1: No scroll, takes only its content's height */

    .section1-header {
        flex-shrink: 0;
        background: transparent;

        .profile-sidebar-header {
            display: flex;
            align-items: center;
            -ms-flex-pack: justify !important;
            justify-content: space-between !important;
            border-bottom: none !important;

            .profile-sidebar-section {
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 20px;
                align-self: stretch;
                padding-top: 20px;

                .profile-sidebar-img {
                    width: 80px;
                    height: 80px;
                }

                .profile-sidebar-name {
                    color: var(--Website-Name);
                    text-align: center;
                    font-family: var(--Family-Font-Name), serif;
                    font-size: 16px;
                    font-style: normal;
                    font-weight: 500;
                    line-height: 28px;
                }

                .profile-sidebar-header-text {
                    max-width: 100%;
                    color: var(--Welcome-Message);
                    text-align: center;
                    font-family: var(--Family-Font-Name), serif;
                    font-size: 18px;
                    font-style: normal;
                    font-weight: 800;
                    line-height: 26px;
                }
            }
        }
    }

    /* Section 2: Scrollable, takes up remaining space */

    .section2-pages {
        flex-grow: 1;
        padding: 10px;
        background: transparent;
        width: 100%;
        align-content: center;

        .profile-sidebar-pages {
            display: flex !important;
            width: 100% !important;
            flex-direction: column !important;
            justify-content: center !important;
            align-items: center !important;
            gap: 21px;

            .profile-sidebar-page {
                color: var(--Pages-unselected) !important;
                text-align: center !important;
                font-family: var(--Family-Font-Name), serif !important;
                font-size: 16px !important;
                font-style: normal !important;
                font-weight: 400 !important;
                line-height: 32px !important;
                width: 80% !important;
                white-space: nowrap !important;
                overflow: hidden !important;
                text-overflow: ellipsis !important; /* Display "..." for overflow text */
                box-sizing: border-box !important;

                &:hover {
                    color: var(--Pages-selected) !important;
                }

                &.page-selected {
                    color: var(--Pages-selected) !important;
                    font-weight: 700 !important;
                }
            }
        }
    }

    /* Section 3: No scroll, takes only its content's height */

    .section3-bottom {
        flex-shrink: 0;
        padding: 20px 0 14px 0;
        background: transparent;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: var(--Sidebar-gap);

        .profile-sidebar-qrcode {
            margin-top: -20px;

            .qr-code {
                width: 100px;
                height: 100px;
                flex-shrink: 0;
            }
        }
    }
}

.profile-sidebar-footer {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;

    color: var(--Footer-Poweredby, #949494);
    font-family: var(--Family-Font-Name), serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
}

.profile-sidebar-footer-powered-by {
    color: var(--Footer-Catalosite, #000);
    font-family: var(--Family-Font-Name), serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 22px;
}

.profile-sidebar-header-language {
    display: flex;
    align-items: center;
    gap: 9px;
    align-self: stretch;

    svg {
        fill: var(--Mobile-Back-Arrow-Icon-color);
        width: 22px;
        height: 22px;
        flex-shrink: 0;
    }

    .profile-header-language-text {
        color: var(--Language-Text);
        font-family: var(--Family-Font-Name), serif;
        font-size: 14px;
        font-style: normal;
        font-weight: 700;
    }
}

.profile-navbar .profile-sidebar-header-language-dropdown {
    left: auto !important;
    right: 10px !important;
}

.control-sidebar {
    height: 100svh !important;
    /*height: 100dvh !important;*/
    min-height: 100svh !important;
    /*min-height: 100dvh !important;*/
}

.profile-control-sidebar {
    background-color: white;

    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 100% !important;
    position: fixed !important;
    width: 100% !important;
    z-index: 1037 !important;

    .control-sidebar-content {
        height: 100% !important;
        min-height: 100% !important;
    }

    .profile-control-sidebar-header {
        padding-top: 10px;
        max-width: 100% !important;
        width: 100% !important;

        display: flex; /* Enable flexbox layout */
        align-items: center; /* Vertically center items */
        justify-content: space-between; /* Space between items (text and back icon) */

        .profile-control-sidebar-text {
            color: var(--Mobile-Navigation-title-color, #000);
            font-family: var(--Family-Font-Name), serif;
            font-size: 24px;
            font-style: normal;
            font-weight: 700;
            line-height: 38px;
            margin-bottom: 0;
            flex-grow: 1; /* Allow text to grow and take available space */
            text-align: center; /* Center the text within its container */
        }
    }

    .clear-icon {
        cursor: pointer;
        font-size: 1.25rem !important;
        color: #666 !important;
        padding: 0 !important;
        font-weight: 700;

        &:hover {
            color: #333 !important;
            font-weight: 800;
        }
    }

    .profile-control-sidebar-search-group {
        direction: var(--Font-Direction);
    }

    .profile-control-sidebar-search {
        max-width: 100% !important;

        border-bottom: 1px solid #555555;

        input {
            border: 0 !important;
            border-radius: 0;
        }

        .input-group-text {
            overflow: hidden;
            color: var(--Search-text-color, #949494);
            text-overflow: ellipsis;
            white-space: nowrap;
            font-family: var(--Family-Font-Name), serif;
            font-size: 16px;
            font-style: normal;
            font-weight: 400;
            line-height: 150%;
            border: 0 !important;
            background: transparent;
            border-radius: 0;
        }

        &:hover {
            border-bottom: 1px solid var(--Search-bar-Selected-border-Hover-color, #006AFF) !important;

            .input-group-text {
                border: 0 !important;
            }

            input::placeholder {
                color: var(--Search-bar-Typing-text-color, #000);
            }
        }
    }

    .profile-control-sidebar-posts {
        /*height: calc(100svh - 32px - 38px - 100px); !* Adjust the height as needed *!*/
        height: 100% !important;
        max-width: 100% !important;
        display: flex;
        flex-direction: column;
        gap: 18px;
        direction: var(--Font-Direction);

        .profile-control-sidebar-post {
            display: inline-flex;
            align-items: center;
            gap: 18px;
            white-space: nowrap; /* Prevent the text from wrapping to the next line */
            overflow: hidden; /* Hide the overflowing text */
            text-overflow: ellipsis;
            width: 100%;
            /*transition: background-color 0.3s;*/

            svg {
                width: 12px;
                height: 14px;
                fill: var(--Post-indicator-unselected-icon-color, #949494);
                transform: scaleX(var(--ScaleX));
            }

            .profile-control-sidebar-post-title {
                overflow: hidden;
                color: var(--Post-indicator-unselected-text-color, #949494);
                text-overflow: ellipsis;
                white-space: nowrap;
                font-family: var(--Family-Font-Name), serif;
                font-size: 18px;
                font-style: normal;
                font-weight: 400;
                line-height: normal;
                position: relative;
            }

            &:hover {
                svg {
                    fill: var(--Post-indicator-unselected-Hover-icon-color);
                    filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.20));
                }

                .profile-control-sidebar-post-title {
                    color: var(--Post-indicator-selected-text-color) !important;
                }
            }

            &.post-selected {
                /*transition: background-color 0.3s;*/

                svg {
                    fill: var(--Post-indicator-selected-icon-color);
                }

                .profile-control-sidebar-post-title {
                    font-size: 18px !important;
                    font-weight: 700 !important;
                    color: var(--Post-indicator-unselected-Hover-text-color) !important;
                }
            }
        }
    }
}

.item-post {
    .section-divider {
        background: #DFDFDF !important;
        margin-top: 34px;
        margin-bottom: 34px;
    }

    .carousel-inner {
        border-radius: 10px 10px 0 0;
    }

    /* if btn-image does not exists, all image round corners */

    &:not(:has(.btn-image)) .carousel-inner {
        border-radius: 10px;
    }

    .item-post-button {
        display: flex;
        height: 40px;
        padding: 10px;
        justify-content: center;
        align-items: center;
        gap: 10px;
        flex-shrink: 0;

        background: var(--Post-Button-background-color);
        color: var(--Post-Button-text) !important;
        text-align: center;
        font-family: var(--Family-Font-Name), serif;
        font-size: 16px;
        font-style: normal;
        font-weight: 400;
        line-height: 35px;

        &:hover {
            background: var(--Post-Button-background-hover-color);
        }
    }

    .item-image {
        padding-bottom: 20px !important;

        .btn-image {
            border-radius: 0 0 10px 10px !important;
        }
    }

    .item-text {
        /*noinspection CssRedundantUnit*/
        border: 0px solid red;
        padding-left: 9px;
        padding-right: 9px;
    }

    .item-title {
        padding-bottom: 14px !important;
        color: var(--Post-Title, #000);
        font-family: var(--Family-Font-Name), serif !important;
        font-size: 18px !important;
        font-style: normal !important;
        font-weight: 900 !important;
        line-height: 28px !important;

        &:has([dir="rtl"]) {
            direction: rtl;
            text-align: right;
        }

        p {
            margin-bottom: 0 !important;
        }
    }

    .item-body {
        padding-bottom: 20px !important;
        color: var(--Post-description, #000);
        font-family: var(--Family-Font-Name), serif !important;
        font-size: 14px !important;
        font-style: normal !important;
        font-weight: 400 !important;
        line-height: 24px !important;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;

        ul, ol {
            padding-left: 0 !important;
            padding-right: 0 !important;
            list-style-position: inside;

            &[dir="rtl"] {
                padding-left: 0 !important;
                padding-right: 0 !important;
                list-style-position: inside;
            }
        }

        &:has([dir="rtl"]) {
            direction: rtl;
            text-align: right;
        }

        p {
            margin-bottom: 0 !important;
        }
    }

    .btn-no-image {
        border-radius: 10px !important;
    }

    /* Remove bottom gap from last direct child */

    .card-body > *:last-child:not(.btn-no-image) {
        padding-bottom: 0 !important;
    }
}

.profile-sidebar-socials {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    max-width: 100%;
    overflow: hidden;

    .profile-sidebar-socials-link {
        .profile-sidebar-socials-icon {
            svg {
                fill: var(--Social-media-Background-color);
                width: 32px;
                height: 32px;

                path {
                    fill: white;
                }
            }
        }
    }
}

.main-header {
    .profile-sidebar-socials-icon {
        svg {
            width: 24px !important;
            height: 24px !important;
        }
    }
}

#qrcodeModal {
    .modal-dialog {
        position: relative;
        display: flex;
        justify-content: center;
    }

    .modal-header {
        svg {
            width: 30px;
            height: 30px;
            flex-shrink: 0;
            fill: var(--Mobile-QR-code-close-coler, #FFF);
            margin-top: 12px;
        }
    }

    .modal-body {
        display: flex;
        flex-direction: column;
        gap: 25px;

        .qr-container {
            position: relative;
            display: flex;
            justify-content: center;
            margin-top: 50px;
        }

        .qr-code-page-name {
            color: #FFF;
            font-family: var(--Family-Font-Name), serif !important;
            font-size: 18px;
            font-style: normal;
            font-weight: 900;
            /*line-height: 100px;*/
            text-transform: uppercase;
        }

        .share-button {
            display: inline-flex;
            width: 206px;
            height: 35px;
            padding: 0;
            flex-direction: row;
            justify-content: center;
            align-items: center;
            gap: 8px;
            flex-shrink: 0;
            border-radius: 4px;
            border: 1px solid #006AFF;
            background: var(--Mobile-Button-background-color);

            .share-button-icon {
                margin-right: auto;
                width: 48px;
                height: 33px;
                border-radius: 4px 0 0 4px;
                background: #FFF;

                svg {
                    width: 15px;
                    height: 15px;
                    flex-shrink: 0;
                    margin-top: 7px;
                }
            }

            .share-button-text {
                position: absolute;

                color: var(--Mobile-Button-text-color, #FFF);
                text-align: center;
                font-family: var(--Family-Font-Name), serif !important;
                font-size: 14px;
                font-style: normal;
                font-weight: 500;
                line-height: 18px;
            }
        }
    }

    .modal-footer {
        border: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;

        .profile-sidebar-footer {
            color: white;
        }

        .profile-sidebar-footer-powered-by {
            color: white;
        }
    }

}

.profile-terms-and-conditions {
    display: flex;
    padding: 10px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;

    a {
        color: #000;
        text-align: center;
        font-family: var(--Family-Font-Name), serif !important;
        font-size: 14px;
        font-style: normal;
        font-weight: 400;
        line-height: 30px; /* 214.286% */
        text-decoration-line: underline;
    }
}

.unsubscribed-footer {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    font-family: var(--Family-Font-Name), serif !important;
    background: rgba(0, 0, 0, .03) !important;
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {

    .sidebar-collapse .main-sidebar, .sidebar-collapse .main-sidebar:before {
        margin-left: 0 !important;
    }

    .control-sidebar.profile-control-sidebar {
        display: none !important;
    }

    .profile-control-sidebar {
        .control-sidebar-content {
            position: fixed !important;
            right: 0 !important;
        }

        .profile-control-sidebar-search-group {
            padding-left: 1px !important;
            padding-right: 1px !important;
            max-width: 100%;
            margin-top: 50px;
        }

        .profile-control-sidebar-posts {
            gap: 24px !important;
            width: 15vw !important;

            .profile-control-sidebar-post {
                gap: 10px !important;
            }
        }

        .profile-control-sidebar-header,
        .profile-control-sidebar-back-icon {
            display: none;
        }
    }

    .main-sidebar.profile-sidebar {
        gap: var(--Sidebar-gap);

        .section3-bottom {
            padding: 20px 0 0 0 !important;
        }
    }

    .scrollable-div {
        overflow: hidden !important;
    }

    .scrollable-div:hover,
    .profile-control-sidebar-post:hover {
        overflow: auto !important; /* Show scrollbar on hover over any child element */
    }

    /* To allow scrolling but hide the scrollbar */
    .profile-control-sidebar-posts.scrollable-div {
        scrollbar-width: none; /* For Firefox */
        -ms-overflow-style: none; /* For Internet Explorer and Edge */

        /* For Webkit-based browsers */
    }

    .profile-control-sidebar-posts.scrollable-div::-webkit-scrollbar {
        display: none; /* For Chrome, Safari, and Opera */
    }
}

/* Medium devices (tablets, less than 992px) */
@media (max-width: 768px) {
    .scrollable-div {
        overflow: auto !important;
    }

    .section2-pages {
        margin-top: 15px !important;
    }

    .container {
        max-width: 100% !important;
    }

    body.control-sidebar-slide-open,
    body.control-sidebar-open,
    body.sidebar-open {
        /*position: fixed !important; !* Prevent background scroll *!*/
        /*overflow: hidden !important; !* Disable both vertical and horizontal scroll *!*/
        width: 100% !important; /* Prevent the body from shrinking */
    }

    html:has(.sidebar-open), body.sidebar-open {
        height: 100% !important;
        overflow: hidden !important; /* Prevent background scroll */
    }

    .sidebar-open .main-sidebar.profile-sidebar {
        width: 100% !important;

        .profile-sidebar-header {
            width: 100% !important;
        }
    }

    .profile-control-sidebar-search-group {
        margin-top: 0 !important;
    }

    .profile-control-sidebar-header {
        padding-top: 0 !important;
    }

    .item-post {
        .item-post-button {
            line-height: 32px;
        }

        .post-footer {
            .item-title {
                font-weight: 900 !important;
            }
        }
    }

    .profile-sidebar-socials {
        gap: 8px;
    }

    .main-sidebar.profile-sidebar {
        padding: 16px !important;

        .profile-sidebar-header {
            width: 100% !important;

            .profile-sidebar-header-text {
                color: var(--Welcome-Message);
                text-align: center;
                font-family: var(--Family-Font-Name), serif;
                font-size: 18px;
                font-style: normal;
                font-weight: 800;
                line-height: 32px;

                word-wrap: break-word;
                overflow: hidden;
                max-width: 70%;
                white-space: nowrap;
            }

            .profile-sidebar-header-close {
                width: 50px !important;

                svg {
                    width: 19px !important;
                    height: 19px !important;
                }
            }
        }

        .profile-sidebar-pages {
            gap: 18px !important;
        }
    }

    .profile-sidebar-header-language {
        gap: 5px !important;
        width: 50px !important;

        svg {
            width: 19px !important;
            height: 19px !important;
        }
    }

    .profile-control-sidebar {
        .profile-control-sidebar-text {
            font-size: 18px !important;
            font-weight: 800 !important;
            line-height: 32px !important;
        }

        .profile-control-sidebar-post-title {
            font-size: 16px !important;
            font-weight: 400 !important;

            &:hover {
                font-weight: 700 !important;;
            }
        }
    }

    .page-section-posts:has(.search-container.expanded) {
        height: calc(100svh - var(--Navbar-Height));
    }

    .search-container {
        display: none !important;
        /*margin-left: 0 !important;*/

        /*&.expanded {*/
        /*    !*position: fixed !important;*!*/
        /*    !*top: 34px !important;*!*/
        /*    !*left: 50% !important;*!*/
        /*    !*transform: translate(-50%, -50%);*!*/
        /*    !*width: 96% !important;*!*/

        /*    display: flex !important;*/
        /*    position: fixed !important;*/
        /*    top: 8px !important;*/
        /*    left: 50% !important;*/
        /*    transform: translateX(-50%);*/
        /*    width: 96% !important;*/
        /*    z-index: 1000;*/

        /*    .search-input {*/
        /*        border: 1px solid lightgrey !important;*/
        /*        width: 100% !important;*/
        /*    }*/
        /*}*/
    }

    body:has(.search-container.expanded) {
        height: calc(100svh - var(--Navbar-Height) - 20) !important;
    }

    /* iOS specific fix */
    @supports (-webkit-touch-callout: none) {
        .search-container {
            /*noinspection CssInvalidPropertyValue*/
            position: -webkit-sticky;
        }
    }

    .main-header.profile-navbar {
        background: white;
        gap: 10px;

        .navbar-nav {
            background: var(--Navbar-Background);
            height: 45px !important;
            border-radius: 5px;
        }

        .profile-navbar-img {
            width: 28px !important;
            height: 28px !important;
        }

        .profile-navbar-section {
            .profile-navbar-name {
                max-width: calc(100vw - 30px) !important;
                font-size: 14px;
            }
        }

        .left {
            flex: 1 !important;
            display: flex !important;
            overflow: hidden !important;
        }

        .profile-content {
            flex: 1 !important;
            white-space: nowrap !important;
            overflow: hidden !important;
            text-overflow: ellipsis !important;
        }

        .right {
            flex: 0 0 auto !important;
            gap: 10px !important;
        }

        .div1, .div2 {
            /* These divs take only the space they need */
            /*flex: 0 0 auto !important;*/
            display: none !important;
        }
    }
}

@media (min-width: 768px) {
    html, body {
        overscroll-behavior: none;
        overflow: hidden;
        height: 100dvh;
    }

    .navbar-nav.left {
        width: 100% !important;
    }

    /* Right profile scrollable section */
    .page-section-posts {
        height: calc(100svh - var(--Navbar-Height));
        overflow-y: auto;
    }

    .main-header {
        .navbar-md-left {
            margin-right: auto !important;
            flex: 1 !important;
            display: flex !important;
            justify-content: flex-start !important;
        }

        .navbar-md-right {
            margin-left: auto !important;
            flex: 1 !important;
            display: flex !important;
            justify-content: flex-end !important;
        }
    }
}
