/*Tabulator style 29 nov 25 created shahinur*/

.tabulator {
    background-color: inherit !important;
   /* border: 0.52px solid #E5E3E3;
    border-radius: 8px;*/
}


    .tabulator .tabulator-header {
        background-color: inherit !important;
        border: 0.52px solid #E5E3E3 !important;
        border-radius: 8px 8px 0 0;
    }


    .tabulator .tabulator-header .tabulator-col {
        background: inherit !important;
        border-right: 0.52px solid #E5E3E3 !important;
        font-weight: 500 !important;
        font-size: 14px !important;
    }
     /*   .tabulator .tabulator-header .tabulator-col:last-of-type {
            border-right: none !important;
        }*/

    .tabulator .tabulator-tableholder .tabulator-table {
        background-color: inherit !important;
    }
    .tabulator .tabulator-tableholder {
        border: 0.52px solid #E5E3E3 !important;
        border-top: none!important;
        scrollbar-width: thin;
        scrollbar-color: transparent transparent;
        transition: scrollbar-color 0.2s ease;
    }
    .tabulator .tabulator-tableholder:hover {
        scrollbar-color: #c1c1c1 transparent;
    }
    .tabulator .tabulator-tableholder::-webkit-scrollbar {
        width: 3px;
        height: 3px;
        transition: width 0.2s ease;
    }
    .tabulator .tabulator-tableholder:hover::-webkit-scrollbar {
        width: 6px;
        height: 6px;
    }
    .tabulator .tabulator-tableholder::-webkit-scrollbar-track {
        background: transparent;
    }
    .tabulator .tabulator-tableholder::-webkit-scrollbar-thumb {
        background: transparent;
        border-radius: 10px;
        transition: background 0.2s ease;
    }
    .tabulator .tabulator-tableholder:hover::-webkit-scrollbar-thumb {
        background: #c1c1c1;
    }

    .tabulator .tabulator-row {
        background-color: inherit !important;
        border-bottom: 0.52px solid #E5E3E3 !important;
    }
    .tabulator .tabulator-row:hover {
        background-color: rgba(0,0,0,0.04) !important;
    }


    .tabulator .tabulator-cell {
        background-color: inherit !important;
        border-right: 0.52px solid #E5E3E3 !important;
        font-size: 12px !important;
        font-weight: 400 !important;
    }


/* When JS marks last visible column */
    /* remove default right border for the last visible column/cell */
    .tabulator .tabulator-row .tabulator-cell.no-right-border,
    .tabulator .tabulator-header .tabulator-col.no-right-border {
        border-right: none !important;
    }




    /*Start tabulator-footer -pagination */
.tabulator .tabulator-footer {
    background-color: inherit !important;
    border: none;
}

/* --- footer contents --- */
.tabulator-footer-contents {
    padding: 0.5rem 0.75rem;
}

/* --- paginator itself --- */
.tabulator-paginator {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    margin-top: auto !important;
    order: 1;
    flex-wrap: wrap;
}

/* --- page counter --- */
.tabulator-page-counter {
    order: 2;
    margin-left: auto;
    font-size: 0.8125rem;
    color: var(--bs-body-color, #566a7f);
    font-weight: 400;
    white-space: nowrap;
}

/* --- page size label --- */
.tabulator-paginator label {
    margin-bottom: 0 !important;
    font-size: 0.775rem;
    color: var(--bs-body-color, #566a7f);
    font-weight: 500;
    white-space: nowrap;
}

/* --- page size select --- */
.tabulator .tabulator-footer .tabulator-page-size {
    border: 0.52px solid #E5E3E3 !important;
    border-radius: 4px;
    padding: 4px 28px 4px 8px;
    font-size: 0.8125rem;
    color: var(--bs-body-color, #566a7f);
    background-color: transparent !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23566a7f' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 8px center;
    appearance: none;
    cursor: pointer;
    width: auto;
    min-width: 50px;
}

/* --- page buttons wrapper --- */
.tabulator-paginator .tabulator-pages {
    order: 3;
    display: flex;
    align-items: center;
    gap: 2px;
}

/* --- all page buttons --- */
.tabulator .tabulator-footer .tabulator-page {
    background-color: transparent !important;
    border: 1px solid transparent !important;
    color: var(--bs-body-color, #566a7f) !important;
    font-size: 0.8125rem;
    padding: 4px 10px;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    min-width: 32px;
    text-align: center;
}

.tabulator .tabulator-footer .tabulator-page:hover:not(:disabled):not(.active) {
    background-color: rgba(0,0,0,0.04) !important;
    border-color: #ddd !important;
}

.tabulator .tabulator-footer .tabulator-page.active {
    background-color: #4AA147 !important;
    color: #FFFFFF !important;
    border-color: #4AA147 !important;
    font-weight: 500;
}

.tabulator-page:disabled {
    color: #999 !important;
    cursor: not-allowed !important;
    opacity: 0.6;
}

/* --- navigation arrow icons --- */
.tabulator .tabulator-footer .tabulator-page[data-page="first"],
.tabulator .tabulator-footer .tabulator-page[data-page="prev"],
.tabulator .tabulator-footer .tabulator-page[data-page="next"],
.tabulator .tabulator-footer .tabulator-page[data-page="last"] {
    font-size: 0;
    line-height: 0;
}
.tabulator .tabulator-footer .tabulator-page[data-page="first"]::before {
    content: "\00AB";
    font-size: 14px;
    line-height: 1;
}
.tabulator .tabulator-footer .tabulator-page[data-page="prev"]::before {
    content: "\2039";
    font-size: 18px;
    line-height: 1;
}
.tabulator .tabulator-footer .tabulator-page[data-page="next"]::before {
    content: "\203A";
    font-size: 18px;
    line-height: 1;
}
.tabulator .tabulator-footer .tabulator-page[data-page="last"]::before {
    content: "\00BB";
    font-size: 14px;
    line-height: 1;
}
.tabulator .tabulator-footer .tabulator-page[data-page=last] {
    border: none !important;
}

/* --- button ordering --- */
.tabulator-paginator [data-page="first"] { order: 1; }
.tabulator-paginator [data-page="prev"]  { order: 2; }
.tabulator-paginator .tabulator-pages    { order: 3; }
.tabulator-paginator [data-page="last"]  { order: 98; }
.tabulator-paginator [data-page="next"]  { order: 99; }

/* End tabulator-footer -pagination */

/* --- Ensure stacking order: frozen containers sit above the main table --- */
.tabulator .tabulator-frozen-left,
.tabulator .tabulator-frozen-right {
    position: relative; /* create stacking context */
    z-index: 5; /* higher than main table rows */
}

.tabulator .tabulator-header .tabulator-frozen.tabulator-frozen-right,.tabulator-row .tabulator-cell.tabulator-frozen.tabulator-frozen-right {
    border-left: 0.52px solid #E5E3E3 !important;
}
/* Header filter — transparent bg */
.tabulator .tabulator-header .tabulator-col .tabulator-header-filter {
    background-color: transparent !important;
}
.tabulator .tabulator-header .tabulator-col .tabulator-header-filter input {
    background-color: transparent !important;
    color: inherit !important;
    border: 0.52px solid #E5E3E3 !important;
    border-radius: 4px;
}
.tabulator .tabulator-header .tabulator-col .tabulator-header-filter input:focus {
    background-color: transparent !important;
}

/*tabulator row select*/
.tabulator .tabulator-row.tabulator-selected {
    background-color: #009136 !important;
}
    /* selected row text colour */
    .tabulator .tabulator-row.tabulator-selected .tabulator-cell {
        color: #fff !important;
        /* adjust if needed */
    }
        .tabulator .tabulator-row.tabulator-selected .tabulator-cell.tabulator-frozen.tabulator-frozen-right {
            background: #009136 !important;
        }
        .tabulator .tabulator-row.tabulator-selected .tabulator-cell.tabulator-frozen.tabulator-frozen-left {
            background: #009136 !important;
        }

/*for grouping*/
.tabulator-row.tabulator-group {
    text-align: left !important;
    border-top: none !important;
    border-right: 0.52px solid #E5E3E3 !important;
}

/* Bootstrap Checkbox Alignment in Tabulator */
.tabulator-cell .form-check-input,
.tabulator-col-title .form-check-input {
    margin: 0 !important;
    cursor: pointer;
    vertical-align: middle;
}

.tabulator-cell {
    display: flex;
    align-items: center;
    justify-content: center;
}