/* תיקונים כלליים לטבלאות - כללים בסיסיים בלבד */

@layer overrides {

/* =========================
   מבנה כללי - כללים בסיסיים בלבד
   ========================= */

.table-responsive {
    width: 100%;
    max-width: 100%;
    overflow-y: visible; /* שומר sticky של ה-thead */
}

/* =========================
   טבלת סעיפי עבודה - work items
   ========================= */

/* הערה: עיצוב #work-items-table הועבר ל-modules/contracts.css */
/* הגדרות ישנות הוסרו - משתמשים בעיצוב החדש עם .work-items-table-responsive */

/* =========================
   טבלאות - כללים גלובליים הוסרו
   ========================= */
/* כללים גלובליים הוסרו - מודולים מגדירים את העיצובים שלהם */

/* =========================
   טקסטים, טיפוגרפיה בתוך טבלה - כללים בסיסיים בלבד
   ========================= */
/* כללים גלובליים הוסרו - מודולים מגדירים את העיצובים שלהם */

/* =========================
   Badges
   ========================= */

.badge {
    font-size: 0.875em;
    padding: 0.375em 0.75em;
    color: var(--text-inverse);
    font-weight: 500;
    border-radius: 0.375rem;
    line-height: 1.2;
}

.badge-primary,
.badge.bg-primary,
.table .badge.badge-primary {
    background-color: var(--primary-600);
    color: var(--text-inverse);
}

.badge-success,
.badge.bg-success,
.table .badge.badge-success {
    background-color: var(--success-500);
    color: var(--text-inverse);
}

.badge-warning,
.badge.bg-warning,
.table .badge.badge-warning {
    background-color: var(--warning-500);
    color: var(--text-main);
}

.badge-danger,
.badge.bg-danger,
.table .badge.badge-danger {
    background-color: var(--error-500);
    color: var(--text-inverse);
}

.badge-info,
.badge.bg-info,
.table .badge.badge-info {
    background-color: var(--info-500);
    color: var(--text-inverse);
}

.badge-secondary,
.badge.bg-secondary,
.table .badge.badge-secondary {
    background-color: var(--secondary-500);
    color: var(--text-inverse);
}

/* =========================
   יומני עבודה (worklogs) - כללים ספציפיים בלבד
   ========================= */
/* כללים ספציפיים למודול worklogs - נשארים */

/* =========================
   כפתורים בתוך טבלאות - כללים בסיסיים בלבד
   ========================= */
/* כללים גלובליים הוסרו - מודולים מגדירים את העיצובים שלהם */

/* =========================
   Dropdown בתוך טבלה - כללים בסיסיים בלבד
   ========================= */
/* כללים גלובליים הוסרו - מודולים מגדירים את העיצובים שלהם */

/* =========================
   פרוגרס בר - כללים בסיסיים בלבד
   ========================= */
/* כללים גלובליים הוסרו - מודולים מגדירים את העיצובים שלהם */

/* =========================
   תיקון: DataTables - מניעת overflow בטבלאות עם pagination
   ========================= */

/* וידוא שטבלאות עם DataTables לא יוצרות overflow */
.dataTables_wrapper,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
    overflow-x: visible ;
    overflow-y: visible ;
}

.dataTables_wrapper .dataTables_scroll,
.dataTables_wrapper .dataTables_scrollBody {
    overflow-x: visible ;
    overflow-y: visible ;
}

/* וידוא שטבלאות בתוך טאבים עם DataTables לא יוצרות overflow */
.tab-pane .dataTables_wrapper,
.tab-pane .dataTables_wrapper .table-responsive {
    overflow-x: visible ;
    overflow-y: visible ;
}

/* =========================
   תיקון: מניעת סרגל גלילה ליד כפתורים בתוך card-header
   ========================= */

/* וידוא ש-card-header עם d-flex לא יוצר overflow */
.card-header.d-flex,
.card-header[class*="d-flex"],
.card-header.flex-column,
.card-header.flex-row,
.card-header[class*="flex-"] {
    overflow: visible ;
    overflow-x: visible ;
    overflow-y: visible ;
    max-width: none ;
    min-width: auto ;
}

/* וידוא שכפתורים בתוך card-header לא יוצרים overflow */
.card-header .d-flex,
.card-header [class*="d-flex"],
.card-header .btn,
.card-header .btn-group,
.card-header button,
.card-header a.btn {
    overflow: visible ;
    overflow-x: visible ;
    overflow-y: visible ;
    white-space: nowrap ;
    flex-shrink: 0 ;
}

/* וידוא ש-card-header עם d-flex לא יוצר overflow */
.card .card-header.d-flex,
.card .card-header[class*="d-flex"] {
    overflow: visible ;
    overflow-x: visible ;
    overflow-y: visible ;
    position: relative;
    z-index: 1;
}

/* =========================
   תיקון: מניעת סרגל גלילה ליד כפתורים בתוך תאי טבלה
   ========================= */

/* וידוא שתאי טבלה עם כפתורים לא יוצרים overflow */
.table td,
.employees-table td,
.contracts-table td,
.materials-table td,
.worklogs-table td,
.projects-table td,
.reports-table td,
.safety-table td,
.email-table td,
.contractors-table td,
table td {
    overflow: visible ;
    overflow-x: visible ;
    overflow-y: visible ;
    max-width: none ;
    min-width: auto ;
}

/* וידוא ש-btn-group בתוך תאי טבלה לא יוצר overflow */
.table td .btn-group,
.employees-table td .btn-group,
.contracts-table td .btn-group,
.materials-table td .btn-group,
.worklogs-table td .btn-group,
.projects-table td .btn-group,
.reports-table td .btn-group,
.safety-table td .btn-group,
.email-table td .btn-group,
.contractors-table td .btn-group,
table td .btn-group {
    overflow: visible ;
    overflow-x: visible ;
    overflow-y: visible ;
    max-width: none ;
    min-width: auto ;
    width: auto ;
    display: inline-flex ;
    flex-wrap: nowrap ;
}

/* וידוא שכפתורים בתוך btn-group לא יוצרים overflow */
.table td .btn-group .btn,
.employees-table td .btn-group .btn,
.contracts-table td .btn-group .btn,
.materials-table td .btn-group .btn,
.worklogs-table td .btn-group .btn,
.projects-table td .btn-group .btn,
.reports-table td .btn-group .btn,
.safety-table td .btn-group .btn,
.email-table td .btn-group .btn,
.contractors-table td .btn-group .btn,
table td .btn-group .btn {
    overflow: visible ;
    overflow-x: visible ;
    overflow-y: visible ;
    white-space: nowrap ;
    flex-shrink: 0 ;
}

/* =========================
   גלילה לטבלאות - "חלון" עם גובה קבוע
   ========================= */

/* Override חזק לדריסת הקוד הגלובלי שמונע scrollbar */
.table-responsive,
.responsive-table-container {
    overflow-x: scroll ;
    overflow-y: auto ;
    max-width: 100% ;
    width: 100% ;
    max-height: 300px ; /* גובה ל-6 שורות - "חלון" לטבלה */
    display: block ;
    position: relative ;
    -webkit-overflow-scrolling: touch ;
    scrollbar-width: thin ;
    -ms-overflow-style: auto ;
}

/* Override חזק להצגת scrollbar - דריסת הקוד הגלובלי */
.table-responsive::-webkit-scrollbar,
.responsive-table-container::-webkit-scrollbar {
    height: 10px ;
    width: 10px ;
    display: block ;
    -webkit-appearance: none ;
}

.table-responsive::-webkit-scrollbar-track,
.responsive-table-container::-webkit-scrollbar-track {
    background: var(--bg-secondary, #f1f1f1) ;
    border-radius: 4px ;
    display: block ;
}

.table-responsive::-webkit-scrollbar-thumb,
.responsive-table-container::-webkit-scrollbar-thumb {
    background: var(--primary-500, #667eea) ;
    border-radius: 4px ;
    display: block ;
}

.table-responsive::-webkit-scrollbar-thumb:hover,
.responsive-table-container::-webkit-scrollbar-thumb:hover {
    background: var(--primary-600, #5568d3) ;
}

/* Override לכל ה-parents שלא יחסמו */
.card .card-body,
.card-body {
    overflow-x: visible ;
    overflow-y: visible ;
}

/* Override ספציפי לדריסת body * overflow-x: hidden */
.table-responsive,
.table-responsive *,
.responsive-table-container,
.responsive-table-container * {
    overflow-x: visible ;
}

.table-responsive,
.responsive-table-container {
    overflow-x: scroll ;
    overflow-y: auto ;
}

/* וידוא שהטבלה תהיה scrollable */
.table-responsive .table,
.responsive-table-container .table,
.responsive-table-container .responsive-table {
    margin-bottom: 0;
    display: table ;
    table-layout: auto;
}

/* קיבוע שורת הכותרת (thead) בזמן גלילה */
.table-responsive .table thead,
.responsive-table-container .table thead,
.responsive-table-container .responsive-table thead {
    position: sticky ;
    top: 0 ;
    z-index: 10 ;
    background-color: var(--bg-primary, #ffffff) ;
}

/* וידוא שתאי הכותרת נראים טוב */
.table-responsive .table thead th,
.responsive-table-container .table thead th,
.responsive-table-container .responsive-table thead th {
    background-color: var(--bg-primary, #ffffff) ;
    border-bottom: 2px solid var(--border-primary, #dee2e6) ;
    box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.1) ;
}

/* וידוא שתאי טבלה עם text-center לא יוצרים overflow */
.table td.text-center,
.employees-table td.text-center,
.contracts-table td.text-center,
.materials-table td.text-center,
.worklogs-table td.text-center,
.projects-table td.text-center,
.reports-table td.text-center,
.safety-table td.text-center,
.email-table td.text-center,
.contractors-table td.text-center,
table td.text-center {
    overflow: visible ;
    overflow-x: visible ;
    overflow-y: visible ;
}

/* =========================
   רספונסיביות
   ========================= */

@media (max-width: 768px) {
    .table .btn-group {
        flex-direction: column;
        gap: 2px;
        width: 100%;
    }

    .table .btn-group .btn,
    .table .btn {
        margin: 1px 0;
        width: 100%;
        text-align: center;
        justify-content: center;
    }
}

} /* סוף @layer overrides */
