.modal {
    z-index: 20009 !important;
    font-family: "Inter", sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    #change-block-icon-modal-content {
        .option-block-icon.exe-icon {
            content: "select_all";
            font-family: var(--icons-ff);
            border-radius: var(--radius);
            transition: var(--tr-02);
            opacity: .5;
        }

        .box-icon-value {
            height: 100%;
            width: 100%;
            background-repeat: no-repeat;
            background-size: contain;
        }

        .option-block-icon {
            &.empty-block-icon.exe-icon {
                background-color: var(--main-background-color);
            }

            &:hover, &:focus {
                opacity: 1;
            }

            &[selected="true"] {
                opacity: 1;

                &.selected-provisional {
                    color: var(--icon-gray);
                    background-color: var(--work-area-bg-color);
                    border: 2px dotted var(--dark-exe-color);
                    height: 36px;
                    width: 36px;
                }
            }
        }

        .empty-block-icon[selected="true"] {
            color: var(--remove);
        }
    }

    .exe-form-tabs {
        width: max-content;
        display: flex;
        gap: var(--margin-l) 1px;
        list-style: none;
        padding: 0;
    }
}

.form-properties .exe-form-tabs {
    width: max-content;
    display: flex;
    gap: var(--margin-l) 1px;
    list-style: none;
    padding: 0;
}

.modal .exe-form-tabs a, .form-properties .exe-form-tabs a {
    text-decoration: none;
    color: var(--icon-gray);
    border: 1px solid var(--elements-hover);
    padding: var(--margin-s) var(--margin-l);
    border-radius: var(--radius-top);
    background-color: var(--elements-hover);
    transition: var(--tr-02);
    position: relative;
    margin-right: 2px;
}

.modal .exe-form-tabs a:hover, .form-properties .exe-form-tabs a:hover {
    color: var(--dark-exe-color);
    border-color: var(--dark-exe-color);
    border-bottom: 1px solid var(--elements-hover);
    transition: var(--tr-02);
}

.modal .exe-form-tabs a.exe-form-active-tab, .form-properties .exe-form-tabs a.exe-form-active-tab {
    color: var(--dark-exe-color);
    background-color: white;
    border-color: var(--dark-exe-color);
    border-bottom: 1px solid white;
    transition: var(--tr-02);
}

.modal .exe-form-tabs a:not(.exe-form-active-tab)::after, .form-properties .exe-form-tabs a:not(.exe-form-active-tab)::after {
    content: "";
    position: absolute;
    left: -1px;
    bottom: -1px;
    width: calc(100% + 2px);
    height: 1px;
    display: block;
    background-color: var(--dark-exe-color);
}

.modal .exe-form-content, .form-properties .exe-form-content {
    display: none;
}

.modal .exe-form-content.exe-form-active-content, .form-properties .exe-form-content.exe-form-active-content {
    display: block;
    background-color: var(--bs-gray-200);
    border-color: var(--dark-exe-color);
    border-bottom: 1px solid white;
    transition: var(--tr-02);
}

.modal .exe-form-tabs, .form-properties .exe-form-tabs {
    margin-bottom: 6px;
}

.modal {
    .form-properties[modal-content-id="page-properties"] .exe-form-tabs {
        margin-bottom: 6.9px;
    }

    .exe-form-tabs a.exe-form-active-tab::after {
        width: 100%;
        height: 1px;
        display: block;
        content: "";
        position: absolute;
        bottom: -2px;
        background: white;
        left: 0;
    }
}

.form-properties .exe-form-tabs a.exe-form-active-tab::after {
    width: 100%;
    height: 1px;
    display: block;
    content: "";
    position: absolute;
    bottom: -2px;
    background: white;
    left: 0;
}

.modal .exe-form-content.exe-form-active-content, .form-properties .exe-form-content.exe-form-active-content {
    min-height: 120px;
    margin-top: 5px;

    /* border: 1px solid var(--dark-exe-color); */
    padding: var(--margin-l) 0;

    /*
    border-radius: var(--radius);
    border-top-left-radius: 0;
    scroll-margin-top: var(--margin-din-xl);
    */
}

.modal .exe-form-tabs li a:not(.exe-form-active-tab)::after, .form-properties .exe-form-tabs li a:not(.exe-form-active-tab)::after {
    width: calc(100% + 2px);
    height: 1px;
    display: block;
    content: "";
    position: absolute;
    bottom: -2px;
    background: var(--dark-exe-color);
    left: -1px;
}

.modal label {
    color: var(--body-text-color);
    max-width: max-content;
    margin-right: var(--margin-m);
    margin-top: 5px;
}

.form-properties label {
    color: var(--body-text-color);
    margin-right: var(--margin-m);
    margin-top: 5px;
}

.modal icon, .form-properties icon {
    font-family: var(--icons-ff);
    cursor: pointer;
    font-size: var(--h3-fs);
    color: var(--dark-exe-color);
}

.modal icon:hover, .form-properties icon:hover {
    filter: brightness(120%);
}

.modal .exe-form-help {
    border-left: 15px solid var(--bs-gray-200);
    position: relative;
}

.form-properties .exe-form-help {
    border-left: 15px solid transparent;
    position: relative;
}

.modal .help-content, .form-properties .help-content {
    position: absolute;
    background-color: hsla(0, 0%, 15%, 1);
    color: var(--white);
    padding: var(--margin-m);
    border-radius: var(--radius);
    opacity: 1;
    font-size: small;
    width: 300px;
    z-index: 2;
    left: 2px;
    top: -7px;
}

.modal .exe-form-help.help-content-active icon, .form-properties .exe-form-help.help-content-active icon {
    color: var(--remove);
}

.modal .help-hidden, .form-properties .help-hidden {
    display: none;
}

.modal-open {
    .modal-dialog.modal-dialog-centered {
        justify-content: center;
        align-items: center;
        max-width: 700px;
    }

    .modal-content {
        width: max-content;
        min-width: 250px;
        padding-top: 8px;

        :is(input[type="text"], textarea) {
            width: 100%;
            resize: none;
        }

        textarea {
            padding-right: 4px;
        }
    }

    .modal-header {
        padding: 5px 10px;

        .modal-title {
            font-size: var(--h4-fs);
            line-height: 1;
        }

        .close {
            border: none;
            border-radius: 8px;
            width: 20px;
            height: 20px;
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 0;
            top: 1.3125rem !important;
            right: 1.625rem !important;
            background: url("images/icons/exe-close-icon.svg") transparent center / 20px no-repeat;

            &:hover {
                background: url("images/icons/exe-close-icon.svg") var(--gray-100) center / 20px no-repeat !important;
            }

            &:focus, span:focus, &:focus-visible, span:focus-visible {
                border: none;
                outline: none;
            }

            span {
                display: none;
            }
        }
    }

    .modal-content.static .modal-header {
        cursor: auto !important;
    }

    :is(.modal-body, .modal-footer) {
        font-size: var(--body-fs);
    }

    .modal-body {
        padding: 25px;

        .modal-body-title {
            color: var(--text);
            font-size: var(--h2-fs);
        }

        li::marker {
            color: var(--dark-exe-color);
        }
    }

    :is(.modal-body, .modal-footer) input[type="checkbox"] {
        accent-color: var(--dark-exe-color);
        max-width: 12px;
        margin-right: var(--margin-m);
        height: 12px;
    }

    .modal-body {
        &[modal-content-id="modal-move-to-page"] .select-move-to-page {
            width: 95%;
        }

        table {
            width: calc(100% - var(--margin-m));
        }
    }

    .modal-footer {
        padding: 5px 10px;

        button {
            min-width: 50px;
        }
    }
}


.modal-open {

    .modal-body .modal-footer {
        margin-top: 10px;
    }

}





/* Modal confirm */

.modal-open {
    #modalConfirm .modal-content {
        width: 400px;
    }

    #change-block-icon-modal-content {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(40px, 1fr));
        gap: var(--margin-m);
        grid-auto-flow: dense;

        > .exe-icon {
            width: 40px;
            height: 40px;
            font-size: 30px;
            line-height: 1;
            display: flex;
            justify-content: center;
            align-items: center;
            color: var(--icon-gray);
            transition: var(--tr-02);
            cursor: pointer;

            &:hover {
                transition: var(--tr-02);
            }
        }
    }

    #change-block-title-input {
        width: calc(100% - var(--margin-m));
    }
}

/* Modal box change icon/title */

/* Modals help */

.modal .modal-body {
    &.help-modal {
        h1.hidden, h2.hidden, h3.hidden {
            display: none;
        }
    }

    &.help-modal-with-logo {
        .help-modal-top {
            height: 100px;
            margin-bottom: 10px;
            text-align: center;

            .exe-logo {
                height: 100%;
            }
        }

        .help-modal-content {
            padding: 15px;
            background-color: white;
            box-shadow: 0px 0px 10px 3px white;

            .exe-form-content {
                max-height: 500px;
                overflow-y: auto;
            }
        }

        .exe-form-content.exe-form-active-content {
            background-color: white;
        }
    }
}

/* Modal upload to drive */

#modalUploadToDrive #drive-folders, #modalUploadToDropbox #dropbox-folders {
    max-width: 400px;
}

/* Modal upload to dropbox */

/* Modal filemanager */

#modalFileManager {
    > .modal-dialog {
        max-width: 1500px;
        max-height: 600px;
    }

    .modal-content {
        width: 1200px;
        height: 600px;

        .hide {
            display: none;
        }

        .modal-body {
            padding: 0;
            max-height: calc(100% - 32px);
        }

        iframe {
            width: 100%;
            height: 100%;
            max-width: 100%;
            max-height: 100%;
            border-radius: var(--radius-bottom);
        }
    }
}

/* Modal stylemanager */

#modalStyleManager {
    > .modal-dialog {
        max-width: 1200px;
        max-height: 600px;
    }

    .modal-content {
        width: 800px;
        min-height: 450px;

        .hidden {
            display: none;
        }

        .modal-body {
            max-height: calc(100% - var(--margin-32));
            position: relative;
            overflow: auto;
        }
    }
}

:is(#modalStyleManager, #modalIdeviceManager) .modal-content .modal-body .alert-danger:not(.show) {
    display: none !important;
}

#modalStyleManager textarea {
    min-height: 50px;
}

:is(#modalStyleManager, #modalIdeviceManager) .modal-content .modal-body .alert-danger.show {
    padding: var(--margin-m);
    position: absolute;
    z-index: 2;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
}

#modalStyleManager .modal-content .modal-body .alert-danger.show {
    width: calc(750px - var(--margin-m) - var(--margin-m));
}

#modalIdeviceManager .modal-content .modal-body .alert-danger.show {
    width: calc(100% - 72px);
}

:is(#modalStyleManager, #modalIdeviceManager) .modal-content .modal-body .alert-danger {
    > * {
        float: none;
        width: unset;
    }

    * {
        margin: 0;
    }

    .text {
        display: flex;
        width: max-content;
    }

    button {
        padding: 0;
        height: 24px;
        width: 24px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}

#modalStyleManager {
    .modal-content {
        .exe-icon {
            font-family: var(--icons-ff);
            width: 25px;
            height: 25px;
            font-size: 20px;
            line-height: 1;
            color: var(--icon-gray);
            transition: none;
            cursor: pointer;

            &:hover {
                color: var(--dark-exe-color);
                transition: var(--tr-02);
            }
        }

        .themes-button-container {
            margin-bottom: var(--margin-xl);
        }

        .modal-body {

            .edit-theme-container {
                max-height: 60vh;
                min-height: 200px;
                max-width: 100%;

                .theme-edit-title {
                    border-bottom: 2px solid var(--dark-exe-color);
                    margin-bottom: 30px;
                    font-weight: 500;
                    font-size: var(--h4-fs);
                }

                :is(input[type="text"], textarea) {
                    max-width: 100%;
                    border: 1px solid #c7c7ce;
                }

                .row-table-edit-theme {
                    display: grid;
                    justify-content: space-between;
                    grid-template-columns: 1fr 3fr;
                    margin-bottom: var(--margin-m);

                    &.hidden {
                        display: none;
                    }
                }

                .exe-form-content-rows {
                    max-height: 350px;
                    background-color: var(--bs-gray-200);
                    border: 1px solid var(--dark-exe-color);
                    border-radius: 0 var(--radius) var(--radius) var(--radius);
                    padding: var(--margin-32) var(--margin-l);
                    overflow: auto;
                }

                .row-table-edit-theme[category="header"] {
                    label {
                        margin-top: 10px;
                    }

                    > div img {
                        object-fit: contain;
                    }
                }

                input[type="color"] {
                    appearance: none;
                    border: none;
                    padding: 0;

                    /*border-radius: 50%;*/
                    /*width: 20px;*/
                    height: 20px;
                    overflow: hidden;
                    cursor: pointer;
                    transition: var(--tr-02);

                    &:hover {
                        opacity: 0.8;
                    }
                }

                .img-container {
                    img {
                        margin-left: 20px;
                        margin-right: 10px;
                        width: 80px;
                        height: 40px;
                    }

                    &.no-img img {
                        display: none;
                    }

                    input {
                        max-width: 300px;
                        margin-top: 7px;

                        &[type="button"] {
                            color: var(--icon-gray);
                            padding: 4px;
                            border-radius: var(--radius);
                            justify-content: center;
                            align-items: center;
                            cursor: pointer;
                            border: 1px solid var(--elements-hover);
                            transition: var(--tr-02);
                            appearance: none;
                            -webkit-appearance: none;
                            background: white;

                            &:hover {
                                color: var(--dark-exe-color);
                                border: 1px solid var(--dark-exe-color);
                                transition: var(--tr-02);
                            }
                        }
                    }

                    .remove-img {
                        float: right;
                        margin-top: 10px;
                    }

                    &.no-img .remove-img {
                        display: none;
                    }

                    .remove-img:hover {
                        color: var(--remove);
                    }
                }
            }

            .info-theme-container {
                max-height: 60vh;
                min-height: 200px;
                overflow-y: auto;
                overflow-x: unset;
            }
        }

        .themes-list-container {
            &.no-tabs > div {
                border: none;
            }

            > div {
                padding: 0;
                margin-top: 0;
            }

            .exe-form-tabs {
                margin-bottom: 0;

                a {
                    height: 27px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                }
            }
        }

        .themes-table-container {
            max-height: 600px;
            border: 1px solid var(--dark-exe-color);
            border-radius: var(--radius);
            padding: 5px;
            margin-top: 35px;
            margin-bottom: 10px;
            width: 100%;
        }

        .only-base-themes .themes-table-container {
            max-height: 800px;
        }

        .themes-table-container .themes-table-title {
            margin-top: -18px;
            margin-bottom: var(--margin-m);
            margin-left: var(--margin-m);
            padding-inline: 5px;
            width: max-content;
            background-color: var(--main-background-color);
        }

        .themes-table-rows-container {
            max-height: 30vh;
            overflow: auto;
        }

        .themes-table {
            margin-inline: auto;

            .theme-row {
                td.theme-title {
                    width: 100%;
                    padding-left: 5px;
                    font-weight: 400;
                    cursor: pointer;
                }

                &:hover > * {
                    color: var(--dark-exe-color);
                    transition: var(--tr-02);
                }

                &.selected {
                    border-color: transparent;

                    /*background-color: var(--dark-exe-color-04);*/

                    td {
                        color: var(--dark-exe-color);
                        filter: brightness(1.1);
                        font-weight: bold;
                    }
                }

                .exe-icon:hover {
                    color: var(--dark-exe-color-08);
                }

                &.selected td.exe-icon {
                    font-weight: 300;
                }

                > td {
                    padding: var(--margin-s) var(--margin-m);

                    &:last-child {
                        border-right: none;
                    }
                }

                &:last-child > td {
                    border-bottom: none;
                }

                .theme-action-export[downloadable="false"] {
                    color: var(--icon-bg-gray);
                    pointer-events: none;
                    cursor: default;
                }
            }
        }

        .theme-properties-title {
            border-bottom: 2px solid var(--dark-exe-color);
            margin-bottom: 30px;
            font-weight: 500;
            font-size: var(--h4-fs);
        }

        .info-theme-table td {
            padding: 3px;
            margin-bottom: 10px;
        }
    }

    .themes-table-rows-container {
        background: none;
    }

    thead {
        border-bottom: 2px solid var(--dark-exe-color);
    }
}

/* Custom Style form */

/* To review
#modalStyleManager .modal-content .themes-table .theme-row:nth-child(odd) {
    background-color: var(--file-odd);
}

#modalStyleManager .modal-content .themes-table .theme-row:hover {
    background-color: var(--bg-light-gray);
}
*/

/* Modal idevicemanager */

#modalIdeviceManager {
    > .modal-dialog {
        max-width: 1200px;
        max-height: 600px;
    }

    .modal-content {
        width: 100%;
        margin-left: 1.5rem;
        margin-right: 1.5rem;
        max-width: 820px;

        .hidden {
            display: none;
        }

        .modal-body {
            .exe-form-content {
                max-height: 365px;
            }

            .idevices-list-container {
                height: calc(100% - 75px);
                clear: both;

                &.no-tabs {
                    height: calc(100% - 45px);
                }
            }

            .exe-form-tabs {
                margin-bottom: 0px;

                a {
                    height: 27px;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                }

                ~ div {
                    border: 1px solid var(--dark-exe-color);
                    border-radius: 0 var(--radius) var(--radius) var(--radius);
                    margin-top: 0;
                }
            }

            .info-idevice-container {
                max-height: 60vh;
                min-height: 200px;
                overflow-y: auto;
                overflow-x: unset;
            }

            .modal-body-content {
                height: 100%;

                > * {
                    height: 100%;
                }
            }
        }

        .exe-icon {
            font-family: var(--icons-ff);
            width: 25px;
            height: 25px;
            font-size: 20px;
            line-height: 1;
            color: var(--icon-gray);
            transition: none;
            cursor: pointer;

            &:hover {
                color: var(--dark-exe-color);
                transition: var(--tr-02);
            }
        }

        .idevices-button-container {
            margin-bottom: 15px;
            width: auto;
            float: right;
        }

        input.table-filter {
            width: auto;
            float: right;
            margin-bottom: 24px;
        }

        .idevices-table-container {
            max-height: 600px;
            border: 1px solid var(--dark-exe-color);
            border-radius: var(--radius);
            padding: 5px;
            margin-top: 35px;
            margin-bottom: 10px;
            width: 100%;
        }

        .only-base-idevices .idevices-table-container {
            max-height: 800px;
        }

        .idevices-table-container .idevices-table-title {
            margin-top: -18px;
            margin-bottom: var(--margin-m);
            margin-left: var(--margin-m);
            padding-inline: 5px;
            width: max-content;
            background-color: var(--main-background-color);
        }

        .idevices-table-rows-container {
            max-height: 100%;
            overflow: auto;
            padding: var(--margin-s);
            border: none;
            background: none;
        }

        .idevices-table {
            width: 100%;

            tbody tr:nth-child(odd) {
                background-color: var(--file-odd);
            }

            thead tr th:hover {
                cursor: pointer;
                color: var(--dark-exe-color);
                transition: var(--tr-02);
            }

            .idevice-row {
                td {
                    font-weight: 400;
                    cursor: pointer;
                    padding-left: 5px;
                    width: auto;

                    &:is(.idevice-visible, .idevice-action) {
                        width: 20px;
                        text-align: center;
                    }
                }

                .idevice-action-export[downloadable="false"] {
                    color: var(--icon-color);
                    pointer-events: none;
                    cursor: default;
                }

                &:hover {
                    background-color: var(--bg-light-gray);

                    > * {
                        color: var(--dark-exe-color);
                        transition: var(--tr-02);
                    }
                }

                background-color: transparent;

                &.selected {
                    border-color: transparent;
                }

                .exe-icon:hover {
                    color: var(--dark-exe-color-08);
                    background-color: var(--light-exe-color);
                }

                > td {
                    padding: 6px 3px;

                    input[type="checkbox"] {
                        margin-inline: auto;
                    }
                }
            }
        }

        .idevices-properties-title {
            border-bottom: 2px solid var(--dark-exe-color);
            margin-bottom: 30px;
            font-weight: 500;
            font-size: var(--h4-fs);
        }

        .info-idevice-table td {
            padding: 3px;
            margin-bottom: 10px;
        }
    }

    .idevice-properties-title {
        border-bottom: 2px solid var(--dark-exe-color);
        margin-bottom: 30px;
        font-weight: 500;
        font-size: var(--h4-fs);
    }
}

/* To review */

/* Modal ode broken links */

#modalOdeBrokenLinks {
    > .modal-dialog {
        max-width: 1600px;
        max-height: 800px;
    }

    .modal-content {
        width: 1200px;
        height: 600px;
    }

    .table td {
        max-width: 280px;
        text-wrap: normal;
        word-wrap: break-word;
    }

    #odeBrokenLinks {
        overflow: auto;
        margin-bottom: 20px;
    }
}

/* Modal ode used files */

#modalOdeUsedFiles {
    > .modal-dialog {
        max-width: 1600px;
        max-height: 800px;
    }

    .modal-content {
        width: 1200px;
        height: 600px;
    }

    .table td {
        max-width: 280px;
        text-wrap: normal;
        word-wrap: break-word;
    }

    #odeUsedFiles {
        overflow: auto;
    }
}

#modalOpenUserOdeFiles {
    .modal-dialog-centered {
        max-width: 60%;
        .modal-content {
            width: 100%;
            .modal-body {
                .modal-actions {
                    display: flex;
                    flex-flow: row nowrap;
                    justify-content: space-between;
                    align-content: center;
                    margin-bottom: 15px;
                    .ode-filter-wrap {
                        width: 35%;
                        .ode-search-field {
                            height: 20px;
                            width: 20px;
                            position: absolute;
                            top: 8px;
                            left: 34px;
                            pointer-events: none;
                        }
                        .ode-filter-input {
                            padding-inline-start: 40px;
                            width: 100%;
                            padding-left: 36px !important;
                        }
                    }
                    #local-ode-file-upload-div {
                        input[type="file"] {
                            display: none;
                        }
                        .ode-files-button-upload {
                            .ode-append-icon {
                                margin-right: 8px;
                                svg {
                                    path {
                                        transition: all 0.2s;
                                        stroke: var(--text-black);
                                    }
                                }
                            }
                            &:hover {
                                background-color: var(--dark-exe-color);
                                .ode-append-icon {
                                    svg {
                                        path {
                                            transition: all 0.2s;
                                            stroke: white;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
                .ode-files-list-container {
                    .ode-files-list {
                        display: flex;
                        flex-direction: column;
                        gap: 10px;
                        max-height: 54vh;
                        overflow: auto;
                        padding-right: 5px;
                        .ode-group {
                            background: #fff;
                            border-radius: .5rem;
                            .ode-row {
                                display: grid;
                                grid-template-columns: 24px 32px 1fr auto;
                                align-items: center;
                                gap: .75rem;
                                padding: .6rem .75rem;
                                background: #fff;
                                border: 1px solid transparent;
                                border-radius: 8px;
                                cursor: pointer;
                                &.selected {
                                    background: var(--brand-primary-50);
                                    border: 1px solid var(--brand-primary-400);
                                }
                                &:hover {
                                    background: var(--brand-primary-50);
                                }
                                &.subversion-show,
                                &.ode-row--indented {
                                    grid-template-columns: 60px 32px 1fr auto;
                                    &:hover {
                                        background: var(--brand-primary-50);
                                    }
                                    &:active {
                                        background: var(--brand-primary-50);
                                        border: 1px solid var(--brand-primary-400);
                                    }
                                    .exe-logo.content {
                                        position: relative;
                                        &::before {
                                            content: '';
                                            background-image: url("images/exe-tree-branch-line.svg");
                                            background-repeat: no-repeat;
                                            background-size: contain;
                                            display: block;
                                            height: 76px;
                                            width: 19px;
                                            position: absolute;
                                            left: -25px;
                                            top: -61px;
                                        }
                                    }
                                }
                                .ode-check-wrap {
                                    display: flex;
                                    justify-content: flex-start;
                                    .ode-check {
                                        max-width: 14px;
                                        width: 14px;
                                        height: 16px;
                                    }
                                }
                                .exe-logo.content {
                                    width: 28px;
                                    height: 28px;
                                }
                                .ode-info {
                                    min-width: 0;
                                    .ode-title {
                                        font-weight: 600;
                                        font-size: 13px;
                                        white-space: nowrap;
                                        overflow: hidden;
                                        text-overflow: ellipsis;
                                    }
                                    .ode-meta {
                                        display: flex;
                                        align-items: center;
                                        gap: 8px;
                                        font-size: 13px;
                                        line-height: 1.4;
                                        color: var(--gray-500);
                                        .ode-badge {
                                            font-size: 13px;
                                            font-weight: 600;
                                            padding: 0px 6px;
                                            border-radius: 16px;
                                            background: var(--brand-primary-50);
                                            color: var(--brand-primary);
                                            border: 1px solid var(--brand-primary-300);
                                        }
                                        .dot {
                                            opacity: .5;
                                        }
                                    }
                                }

                                .ode-actions {
                                    display: inline-flex;
                                    align-items: center;
                                    gap: 5px;
                                    .ode-toggle {
                                        border: 0;
                                        background: transparent;
                                        cursor: pointer;
                                        padding: 5px 6px;
                                        border-radius: 6px;
                                        border: 1px solid transparent;
                                        &.block-others-show {
                                            stroke: var(--text-black);
                                        }
                                        &.unblock-others-show {
                                            svg {
                                                path {
                                                    stroke: var(--dark-exe-color);
                                                }
                                            }
                                        }
                                        &:hover {
                                            background: var(--brand-primary-100);
                                            border: 1px solid var(--brand-primary-300);
                                        }
                                    }
                                    .open-user-ode-file-action-delete {
                                        border: 0;
                                        background: transparent;
                                        cursor: pointer;
                                        padding: .25rem .35rem;
                                        border-radius: .375rem;
                                        border: 1px solid transparent;
                                        &:hover {
                                            background: var(--brand-primary-100);
                                            border: 1px solid var(--brand-primary-300);
                                        }
                                    }
                                }
                            }
                            .ode-versions {
                                article:first-of-type {
                                    .exe-logo.content {
                                        position: relative;
                                        &::before {
                                            content: '';
                                            background-image: url("images/exe-tree-branch-line-first.svg");
                                            background-repeat: no-repeat;
                                            background-size: contain;
                                            display: block;
                                            height: 49px;
                                            width: 19px;
                                            position: absolute;
                                            left: -25px;
                                            top: -34px;
                                        }
                                    }
                                }
                            }
                        }
                        &::-webkit-scrollbar {
                            width: 8px;
                            height: 8px;
                        }
                        &::-webkit-scrollbar-thumb {
                            background: #d4d7dd;
                            border-radius: 8px;
                        }
                        &::-webkit-scrollbar-thumb:hover {
                            background: #c2c6cf;
                        }
                    }
                }
            }
            .modal-footer {
                justify-content: space-around;
                .progress-bar-div {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    gap: .5rem;
                    flex-grow: 1;
                    p {
                        margin: .25rem 0 .5rem 0;
                        font-size: .9rem;
                        color: #6C6C6C;
                        display: flex;
                        align-items: flex-start;
                        gap: .5rem;
                        flex-flow: column-reverse nowrap;
                        .progress {
                            width: 220px;
                            height: 10px;
                            border-radius: 999px;
                            background: #eef2f7;
                            overflow: hidden;
                            .progress-bar {
                                &.bg-success {
                                    background: #22c55e;
                                }
                                &.bg-warning {
                                    background: #f59e0b;
                                }
                                &.bg-danger {
                                    background: #ef4444;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

/* Modal session logout */



/* Modal lopd */

#modalLopd {
    background-color: var(--bg-dark-gray);

    > .modal-dialog {
        max-width: 1500px;
        max-height: 600px;
    }

    .modal-content {
        width: 90vw;
        height: 90vh;

        .modal-body {
            text-align: justify;
            overflow-y: auto;
        }
    }
}

/* Modal assistant */

#modalAssistant .modal-dialog {
    max-width: 900px;
    min-width: 700px;

    .modal-content {
        min-height: 400px;
        max-width: 900px;
        width: 900px;
    }

    .modal-body {
        min-height: 300px;
    }

    .modal-content {
        .top-menu {
            background: var(--bs-gray-200);
            display: flex;
            margin-bottom: 10px;
            border-radius: var(--radius);

            .exe-icon.show-tabs {
                margin-left: 5px;
                font-size: 25px;
                border-radius: var(--radius);
            }
        }

        .body-content {
            height: 100%;
            display: flex;
            gap: var(--margin-m);

            > * {
                border: 1px solid var(--dark-exe-color);
                border-radius: var(--radius);
                margin: 0;
            }

            .exe-form-tabs {
                display: none;
            }

            &.show-tabs .exe-form-tabs {
                min-height: 300px;
                flex: 1 1 25%;
                display: block;
                overflow: hidden;
                font-weight: bold;
                background-color: var(--bg-light-gray);
            }

            .exe-form-content {
                min-height: 300px;
                flex: 1 1 75%;
            }

            .exe-form-tabs li {
                line-height: 35px;

                a {
                    display: inline-block;
                    width: calc(100% - var(--margin-l));
                    border: none;
                    border-radius: 0;
                    padding: 0 var(--margin-m);
                    background-color: var(--bg-light-gray);

                    &.exe-form-active-tab {
                        background-color: var(--dark-exe-color);
                        color: white;
                    }

                    &::after {
                        display: none;
                    }
                }
            }
        }
    }
}

/* Legal notes (Markdown files) */

.md-converted-content h1 {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
}

#modalLegalNotes {
    p + .lead {
        margin-top: 2.5em;
        border-top: 1px solid #e6e7ed;
        padding-top: 1.5em;
    }

    ul + .lead {
        margin-top: 2.5em;
        border-top: 1px solid #e6e7ed;
        padding-top: 1.5em;
        margin-top: 1.5em;
    }
}

/* Modal release notes */

#modalReleaseNotes {
    .modal-dialog {
        max-width: 1200px;
        min-width: 700px;
        width: 80vw;
    }

    .modal-content {
        max-width: 1200px;
        min-width: 700px;
        width: 100%;
    }

    .md-converted-content {
        h2 span {
            font-size: .7em;
            margin-left: .7em;
        }

        h3.lead {
            margin-top: 1em;
            font-size: 1.2em;
        }

        hr {
            margin: 2em 0;
        }
    }
}

/* Modal legal notes */

#modalLegalNotes {
    .modal-dialog {
        max-width: 900px;
        min-width: 700px;
    }

    .modal-content {
        max-width: 900px;
        min-width: 700px;
        width: 100%;

        .exe-form-content {
            font-size: .95em;
            line-height: 1.7em;

            li {
                color: #555;

                span {
                    color: #000;
                }
            }

            ul ul {
                margin-top: .5em;
                margin-bottom: .5em;
                font-size: .95em;
            }

            a {
                filter: grayscale(1);

                &:hover, &:focus {
                    filter: grayscale(0);
                    color: var(--dark-exe-color);
                }
            }
        }

        .md-converted-content li {
            color: #000;

            li {
                color: #555;
            }
        }
    }
}

/* Modal about exe */

#modalAbout {
    .modal-dialog {
        max-width: 900px;
        min-width: 700px;
    }

    .modal-content {
        max-width: 900px;
        min-width: 700px;
        width: 100%;
    }
}

/* Modal share button */

.share-link-div {
    #shareUrlButton {
        background: none;
        border: none;
        color: var(--icon-gray);
        margin-left: 10px;

        i {
            font-style: normal;
        }
    }

    .share-link-div-content {
        display: flex;
    }

    .share-link-text {
        margin: 0;
        padding: 0;
    }
}

/* Modal properties */

#modalProperties {
    .modal-dialog {
        max-width: 1000px;
        min-width: 700px;
    }
    .modal-content {
        max-width: 1000px;
        width: 1000px;
        width: 80vw;
    }

    &[fullscreen="true"] {
        .modal-dialog, .modal-content {
            max-width: none;
            min-width: 700px;
            width: 80%;
        }

        .modal-body .exe-properties-form-content {
            max-height: 60vh;
            height: 60vh;
        }
    }

    .form-properties .exe-properties-form-content {
        min-height: 250px;
        max-height: 60vh;
    }

    .properties-body-container {
        .exe-properties-form-content {
            .exe-table-content {
                display: table;
                width: 100%;

            }
        }
    }
    .form-properties[modal-content-id="page-properties"] {
        .properties-body-container {
            .exe-properties-form-content {
                .exe-table-content {
                    .property-row {
                        > :nth-child(1) {
                            text-align: right;
                            margin-right: 24px;
                            width: 20%;
                        }
                        > :nth-child(2) {
                            text-align: left;
                            width: 67%;
                        }
                        input[type="checkbox"] {
                            max-width: 20px;
                            width: 4% !important;
                            margin-left: 17.5%;
                        }
                    }
                }
            }
        }
    }
    .form-properties[modal-content-id="preferences"] {
        .properties-body-container {
            .exe-properties-form-content {
                .exe-table-content {
                    .property-row {
                        > :nth-child(1) {
                            width: 30%;
                            max-width: none;
                            text-align: left;
                            margin-right: 24px;
                        }
                        > :nth-child(2) {
                            width: 60%;
                            text-align: left;
                        }
                        .help-content {
                            top: 38px;
                            left: unset;
                            right: 0;
                        }
                    }
                }
            }
        }
    }

    #versionControl {
        display: none;
    }
}

#modalProperties .modal-content .exe-icon {
    font-family: var(--icons-ff);
    width: 15px;
    height: 15px;
    font-size: 13px;
    color: var(--icon-gray);
    transition: none;
    cursor: pointer;
    background-color: white;
    border: 1px solid var(--icon-gray);
    border-radius: 100%;
    padding: 2px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    margin-inline: 5px;
}

body[mode="advanced"] .modal .form-properties .exe-properties-form-content {
    border: 1px solid var(--dark-exe-color);
    overflow: auto;
    border-radius: var(--radius);
    border-top-left-radius: 0;
}

.modal-content .modal-body {
    .exe-table-content div {
        --width: 200px;

        > {
            input {
                max-width: 12px;
                margin-left: 17.5%;
                margin-right: 0;
                &[type=checkbox] {
                    margin-left: 0%;
                }
            }

            label {
                max-width: var(--width);
                text-align: right;

                + * {
                    max-width: calc(100% - var(--width));
                    margin-left: 0;
                }
            }

            input + * {
                max-width: unset;
                margin-left: 13px;
                margin-right: 0;
                width: calc(100% - 172px) !important;
                text-align: left;
            }
        }
    }

    .exe-form-help.help-content-disabled {
        margin-left: 0 !important;
    }
}

:is(#modalOdeBrokenLinks, #modalOdeUsedFiles, #modalIdeviceManager, #modalOpenUserOdeFiles) :is(.table, .idevices-table, .ode-files-table) thead {
    vertical-align: middle;
}

:is(#modalOdeBrokenLinks, #modalOdeUsedFiles, #modalIdeviceManager, #modalOpenUserOdeFiles) :is(.table, .idevices-table, .ode-files-table) th {
    font-weight: 500;
}

:is(#modalOdeBrokenLinks, #modalOdeUsedFiles, #modalIdeviceManager, #modalOpenUserOdeFiles) :is(.table, .idevices-table, .ode-files-table) tr td {
    max-width: 280px;
    word-wrap: break-word;
    font-size: 14px;
}

:is(#modalOdeBrokenLinks, #modalOdeUsedFiles, #modalIdeviceManager, #modalOpenUserOdeFiles) :is(.table, .idevices-table, .ode-files-table) tr td {
    padding: var(--margin-s) var(--margin-m);
}

:is(#modalOdeBrokenLinks, #modalOdeUsedFiles, #modalIdeviceManager, #modalOpenUserOdeFiles) :is(.table, .idevices-table, .ode-files-table) tr th {
    padding: var(--margin-s) var(--margin-m);
    border-bottom: 2px solid var(--dark-exe-color);
}

:is(#modalOdeBrokenLinks, #modalOdeUsedFiles, #modalIdeviceManager, #modalOpenUserOdeFiles) :is(.table, .idevices-table, .ode-files-table) tr :is(td, th):last-child {
    border-right: none;
}

:is(#modalOdeBrokenLinks, #modalOdeUsedFiles, #modalIdeviceManager, #modalOpenUserOdeFiles) :is(.table, .idevices-table, .ode-files-table) tr:last-child td {
    border-bottom: none;
}

.session-logout-without-save.btn.btn-primary {
    background-color: var(--gray-100) !important;
    border-color: transparent !important;
    color: var(--delete) !important;
    font-weight: 500;
    &:hover {
        background-color: #c7414317 !important;
        border-color: transparent !important;
    }
}

#modalInfo {
    .modal-dialog-centered {
        max-width: 60%;
        .modal-content {
            width: 50%;
            .modal-body {
                .exe-concurrent-users {
                    display: flex;
                    flex-flow: column nowrap;
                    gap: var(--margin-m);
                    justify-content: flex-start;
                    align-items: flex-start;
                    max-height: 50vh;
                    overflow-y: auto;
                    .user-current-letter-icon {
                        width: 100%;
                        display: flex;
                        flex-flow: row nowrap;
                        gap: 15px;
                        justify-content: flex-start;
                        align-items: center;
                        .username {
                            font-size: var(--h4-fs);
                            font-weight: 500;
                        }
                    }
                }
            }
        }
    }
}
