﻿
.grid {
    width: 100%;
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0 10px;
}

    .grid th {
        font-family: Inter;
        padding: 9px 20px;
        font-weight: 500;
        font-size: 12px;
        color: #525252;
        line-height: 16px;
        text-transform: uppercase;
    }

        .grid th.header-group {
            font-family: Inter;
            padding: 9px 20px;
            font-weight: 600;
            font-size: 12px;
            color: #525252;
            line-height: 14.52px;
            text-transform: uppercase;
            border-bottom: 1pt solid #E5E5E5;
            border-right: 1pt solid #E5E5E5;
        }

        .grid th:hover {
            color: #2C2C2C;
        }

        .grid th:first-child {
            padding-left: 15px;
        }

        .grid th span.selected-header {
            color: #2C2C2C;
        }

        .grid th span img {
            display: inline-block;
        }

        .grid th span.default-sort img:first-child {
            display: none;
        }

        .grid th:hover span.default-sort img:last-child {
            display: none;
        }

        .grid th:hover span.default-sort img:first-child {
            display: inline-block;
        }

        .grid th span:first-child {
            margin-right: 5px;
            display: inline-block;
            vertical-align: middle;
        }

    .grid td.left-border {
        border-left: 1pt solid #E5E5E5;
    }

    .grid th.left-border {
        border-left: 1pt solid #E5E5E5;
    }

    .grid td:first-child {
        border-top-left-radius: 12px;
        border-bottom-left-radius: 12px;
        margin-left: 21px;
        padding-left: 15px;
    }

    .grid td:last-child {
        border-bottom-right-radius: 12px;
        border-top-right-radius: 12px;
        padding-right: 12px;
    }

    .grid tbody tr {
        height: 48px;
        font-family: Inter;
        font-weight: 400;
        font-size: 14px;
        color: #2C2C2C;
        background-color: #FFFFFF;
    }

        .grid tbody tr:hover {
            background-color: #FFFDEB;
        }

    .grid.small-rows {
        border-spacing: 0 8px;
    }

        .grid.small-rows tbody tr {
            height: 40px;
        }

table.grid tbody tr:has(input:checked) td {
    border-top: 2px solid #1A7CCA;
    border-bottom: 2px solid #1A7CCA;
}

    table.grid tbody tr:has(input:checked) td:first-child {
        border-left: 2px solid #1A7CCA;
    }

    table.grid tbody tr:has(input:checked) td:last-child {
        border-right: 2px solid #1A7CCA;
    }

table > tbody > tr:first-child > td.freeze-column-right:hover,
table > tbody > tr:first-child:has(.collapsed-items) > td.freeze-column-right {
    z-index: 7;
}

.grid thead {
    position: sticky;
    top: 0;
    z-index: 6;
}

.grid tbody td {
    padding: 0px 20px;
}

.pagination-footer {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

td.active::before {
    content: url('/images/check.svg');
    display: block;
    width: 100%;
    height: auto;
}

td.active_green::before {
    content: url('/images/check.svg');
    display: block;
    width: 100%;
    height: auto;
    margin-left: 35px;
}

td.inactive_red_X::before {
    content: url('/images/close24px_red.svg');
    display: block;
    width: 100%;
    height: auto;
    margin-left: 35px;
}


.mobile-items {
    display: none;
}

.mobile-grid-actions {
    display: none;
}

.gray-striped-grid.grid td {
    align-content: center;
}

    .gray-striped-grid.grid td:first-child {
        padding-left: 20px;
    }

.gray-striped-grid.grid th:first-child {
    padding-left: 20px;
}

.gray-striped-grid.grid tbody tr:nth-child(even) {
    background-color: #FAFAFA;
}

.gray-striped-grid.grid tbody tr:nth-child(odd) {
    background-color: #F5F5F5;
}

.grid-container-modal {
    width: 100%;
    margin-top: 10px;
}

.grid .desktop-items {
    width: auto;
    display: flex;
    float: right;
    gap: 10px;
}

.bi-sort-alpha-down {
    display: none;
}

.bi-arrow-down-up {
    display: none;
}

.column-semibold {
    font-weight: 600;
}

.grid-container {
    max-height: calc(100vh - 250px);
    height: max-content !important;
    max-width: 100%;
    overflow-x: auto;
}

    .grid-container .table-responsive {
        max-height: calc(100vh - 268px) !important;
        height: max-content !important;
        padding-right: 10px;
        margin-right: -10px;
    }

table.grid:not(.gray-striped-grid) > thead > tr > th:is(.freeze-column-right).freeze-column-active,
table.grid:not(.gray-striped-grid) > thead > tr > th:is(.freeze-column-right).freeze-column-right {
    background-color: #F5F5F5;
}

table.grid.gray-striped-grid > thead > tr > th:is(.freeze-column-right).freeze-column-right {
    background-color: inherit;
}

table.grid > tbody > tr > td:is(.freeze-column-right) {
    background-color: inherit;
    padding-left: 10px;
}

.show-shadow table.grid > tbody > tr > td:is(.freeze-column-right) {
    box-shadow: rgba(76, 76, 76, 0.04) -1em 0px 0.5em;
}

table.grid > thead > tr > th:is(.freeze-column-right).freeze-column-active {
    box-shadow: inset 1px 0 0 var(--bs-table-border-color), inset 0 1px 0 var(--bs-table-border-color), inset 0 -1px 0 var(--bs-table-border-color);
}

table.grid > tbody > tr > td.freeze-column:has(.mobile-grid-actions-container.active),
table.grid > tbody > tr > td.freeze-column:has(.collapsed-grid-actions-container) {
    z-index: 5;
}

.grid-with-top-buttons-layout > .grid-container .grid thead,
.split-page-left .grid-container .grid thead {
    background-color: #F5F5F5;
}

.split-page-left .grid-container {
    padding-right: 10px;
}

.custom-modal-layout.modal-l .grid-with-top-buttons-layout .grid-container > div:not(.pagination-main-container) {
    max-height: calc(100vh - 580px);
    overflow: auto;
}

.collapsed-grid-actions-container.active {
    display: contents;
    position: absolute;
    position: fixed;
}

.collapsed-grid-actions-container button {
    border-radius: 8px;
    height: 48px;
    padding: 14px 10px;
    display: flex;
    justify-content: flex-start;
    width: 90%;
    margin: 8px;
    background-color: #FAFAFA;
    border: 0px;
    align-items: center;
}

.collapsed-grid-actions-container .collapsed-grid-actions {
    display: block;
    position: absolute;
    border: 1px solid #E5E5E5;
    border-radius: 10px;
    background-color: #FFFFFF;
    width: 177px;
    height: auto;
    right: 45px;
    z-index: 10000;
    box-shadow: 0px 4px 6px 0px #00000017;
}

.tooltip-container {
    background: #ffffff;
    border-radius: 4px;
    color: #1d1d1b;
    font-family: "Inter";
    font-weight: 400;
    font-size: 12px;
    padding: 5px 10px 7px 10px;
    box-shadow: 0px 8px 16px -2px #2d2d2d1f;
    z-index: 198;
    height: auto;
    width: auto;
    margin-bottom: 10px;
    white-space: nowrap;
    position: absolute;
}

table.grid tbody tr:has(input:checked) td {
    border-top: 2px solid #1A7CCA;
    border-bottom: 2px solid #1A7CCA;
}

    table.grid tbody tr:has(input:checked) td:first-child {
        border-left: 2px solid #1A7CCA;
    }

    table.grid tbody tr:has(input:checked) td:last-child {
        border-right: 2px solid #1A7CCA;
    }

@media screen and (max-width: 768px) {
    .mobile-items {
        display: block;
        float: right;
    }

    .grid-container .table-responsive {
        margin-right: 0;
    }

    .grid .desktop-items {
        display: none;
    }

    .grid {
        width: max-content;
        min-width: 100%;
        border-spacing: 0 8px;
    }

    .grid-with-top-buttons-layout {
        width: 100%;
    }

    .gridContainer {
        height: auto;
        flex-direction: column;
    }

    .grid-with-top-buttons-layout .grid-container > div:not(.pagination-main-container) {
        max-height: calc(100vh - 260px);
        overflow: auto;
        padding-right: 10px;
        padding-bottom: 10px;
    }
}

table.grid .input-wrapper {
    margin: 0;
}

table.grid .combobox-wrapper {
    margin: 0;
    min-width: 200px;
}

    table.grid .input-wrapper input,
    table.grid .combobox-wrapper .single-selection-combobox-input {
        padding: 16px;
        font-family: Inter;
        font-weight: 400;
        font-size: 14px;
        line-height: 20px;
        color: #2C2C2C;
        width: 100%;
        height: 32px;
        margin: 8px 0;
        border: 1px solid #D4D4D4;
        border-radius: 8px;
        overflow: visible;
    }

    table.grid .combobox-wrapper .single-selection-input-label {
        display: none;
    }

    table.grid .combobox-wrapper .single-selection-combobox-input {
        background-color: #FFFFFF;
    }

    table.grid .combobox-wrapper .single-selection-selected-text-label {
        position: relative;
        top: 0;
        left: 0;
    }

@media screen and (max-width: 1100px) {
    .modal-l .mobile-items {
        display: block;
    }

    .modal-l .desktop-items {
        display: none;
    }

    .mobile-grid-actions-container.active {
        display: contents;
        position: absolute;
        position: fixed;
    }

        .mobile-grid-actions-container.active button {
            border-radius: 8px;
            height: 48px;
            padding: 14px 10px;
            display: flex;
            justify-content: flex-start;
            width: 90%;
            margin: 8px;
            background-color: #FAFAFA;
            border: 0px;
            align-items: center;
        }

        .mobile-grid-actions-container.active .mobile-grid-actions {
            display: block;
            position: absolute;
            border: 1px solid #E5E5E5;
            border-radius: 10px;
            background-color: #FFFFFF;
            width: 177px;
            height: auto;
            right: 45px;
            box-shadow: 0px 4px 6px 0px #00000017;
        }

    .modal-l .grid {
        width: max-content;
        min-width: 100%;
    }

    .modal-l .grid-with-top-buttons-layout {
        width: 100%;
    }

    .modal-l .gridContainer {
        height: auto;
        flex-direction: column;
    }
}
