
/* ============================================================
   TableServer - Container اصلی
   ============================================================ */
.TableServer {
    --ts-bg: #fff;
    --ts-fg-primary: #253343;
    --ts-fg-secondary: #566e88;
    --ts-fg-tertiary: #647e9a;
    --ts-border-light: #d1dbe8;
    --ts-border-lighter: #e9edf5;
    --ts-border-cell: #e0e0e0;
    --ts-header-bg: #f0f0f0;
    --ts-header-fg: #212529;
    --ts-body-fg: #333333;
    --ts-hover-bg: rgba(240, 240, 240, 0.4);
    --ts-divider-color: #e0e0e0;
    
    font-size: 14px;
    font-weight: 325;
    line-height: 20px;
    letter-spacing: -0.28px;
    background-color: var(--ts-bg);
    display: flex;
    flex-direction: column;
    gap: 1rem;
    border: 1px solid var(--ts-border-cell);
    border-radius: 0.75rem;
    overflow: hidden;
    font-family: IRANSans, Tahoma, Arial, Helvetica, sans-serif;
    margin-bottom: 1rem;
}

.TableServer__tableWrapper {
    overflow: auto;
    position: relative;
    outline: 0;
    border-radius: 0.75rem;
    -webkit-overflow-scrolling: touch;
}

.TableServer__table {
    min-width: 100%;
    border-spacing: 0;
    border-collapse: separate;
    table-layout: fixed;
    margin-bottom: 0;
}

.TableServer__thead {
    position: sticky;
    top: 0;
    z-index: 2;
}

/* ردیف‌ها */
.TableServerRow {
    position: relative;
    z-index: 0;
}

/* سلول‌ها */
.TableServerCell {
    font-size: 14px;
    font-weight: 325;
    line-height: 20px;
    letter-spacing: -0.28px;
    position: relative;
    text-align: start;
    padding: 0;
    width: var(--ts-width, auto);
    background-color: var(--ts-bg);
    font-family: IRANSans, Tahoma, Arial, Helvetica, sans-serif;
    vertical-align: middle;
}

.TableServerCell:last-of-type {
    overflow: hidden;
}

/* هدر سلول */
.TableServerCell--header {
    color: var(--ts-header-fg);
    user-select: none;
    border-bottom: 1px solid var(--ts-border-cell);
    background-color: var(--ts-header-bg);
    font-weight: 700;
}

/* بدنه سلول */
.TableServerCell--body {
    color: var(--ts-body-fg);
    border-bottom: 1px solid var(--ts-border-cell);
}

/* آخرین ردیف - بدون خط */
.TableServer__tbody .TableServerRow:last-child .TableServerCell--body {
    border-bottom: none;
}

/* wrapper سلول */
.TableServerCell__wrapper {
    display: flex;
    align-items: center;
    padding: 0;
    height: 100%;
}

/* محتوای سلول */
.TableServerCell__content {
    display: flex;
    align-items: center;
    flex-grow: 1;
    gap: 4px;
    padding: 10px 8px;
    min-height: 44px;
}

.TableServerCell__content--start {
    text-align: start;
    justify-content: flex-start;
}

.TableServerCell__content--center {
    text-align: center;
    justify-content: center;
}

.TableServerCell__content--end {
    text-align: end;
    justify-content: flex-end;
}

/* خط جداکننده عمودی */
.TableServerCell__divider {
    position: absolute;
    inset-inline-end: 0;
    top: 20%;
    bottom: 20%;
    width: 1px;
    background-color: var(--ts-divider-color);
    pointer-events: none;
}

/* هاور */
.TableServerRow--body:hover .TableServerCell--body {
    background-color: var(--ts-hover-bg);
    transition: background-color 0.15s ease;
}

/* تصاویر داخل سلول */
.TableServerCell__content img {
    max-height: 40px;
    width: auto;
    border-radius: 4px;
}

/* input-group داخل سلول */
.TableServerCell__content .input-group {
    flex-wrap: nowrap;
}

.TableServerCell__content .form-control {
    font-family: IRANSans, Tahoma, Arial, sans-serif;
    font-size: 13px;
}

.TableServerCell__content .btn {
    padding: 4px 8px;
    font-size: 13px;
}

/* RTL */
html[dir="rtl"] .TableServer,
body[dir="rtl"] .TableServer {
    direction: rtl;
    text-align: right;
}

/* LTR */
html[dir="ltr"] .TableServer,
body[dir="ltr"] .TableServer {
    direction: ltr;
    text-align: left;
}

/* Responsive */
@media (max-width: 768px) {
    .TableServer {
        font-size: 12px;
    }
    
    .TableServerCell {
        font-size: 12px;
    }
    
    .TableServerCell__content {
        padding: 8px 4px;
    }
}