a.main-menu-item {
    font-weight: 100;
}

div.header {
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 2fr;
    column-gap: 5px;
}

div.menu {
    margin: auto;
    justify-self: center;
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 1fr;
    column-gap: 5px;
    row-gap: 10px;
    width: 500px;
}

div.main_menu {
    grid-template-columns: 1fr 1fr;   
}

div.pdfs_menu {
    grid-template-columns: 1fr 2fr;
}

img.header_logo {
    max-width: 60%;
    max-height: 60%;
}

div.header_text {
    font-size: 25px;
}

.sortable-header {
    position: relative;
    user-select: none;
}

.sortable-header:hover {
    background-color: rgba(255, 255, 255, 1);
    color: #000000;
    z-index: 2;
}

.sort-indicator {
    margin-left: 5px;
    font-weight: bold;
}

.table thead th {
    position: sticky;
    top: 37px;
    background: #212529; 
    color: #fff;         
    z-index: 2;
}
.table-container {
    max-height: calc(100vh - 300px);
    overflow-y: auto;
    position: relative;
}

.table-controls {
    position: sticky;
    top: 0;
    z-index: 3;
    /*background: #fff; /* Or match your table background */
    padding-top: 0px;
    padding-bottom: 0px;
}

.table td {
    z-index: 1;
}

/* Allow textarea resizing for TEXT fields */
textarea.form-control {
    resize: vertical;
    min-height: 100px;
}

/* Conditional status formatting for entity index cells and edit status selectors. */
.entity-status-cell,
.entity-status-select {
    font-weight: 600;
    color: #1f2328;
}

.entity-status-cell {
    --bs-table-accent-bg: transparent;
    background-image: none;
}

.entity-status-select {
    background-image: none;
}

.entity-status-cree {
    background-color: #d9d9d9;
}

.entity-status-valide {
    background-color: #d7f3f1;
}

.entity-status-approuve {
    background-color: #dff2dd;
}

.entity-status-en-cours {
    background-color: #f0dff0;
}

.entity-status-ferme {
    background-color: #fce9d6;
}

.entity-status-annule {
    background-color: #f8d7da;
}

.entity-status-readonly {
    color: #111827;
}

.entity-status-readonly.entity-status-cree {
    background-color: #c5c5c5;
}

.entity-status-readonly.entity-status-valide {
    background-color: #bee8e5;
}

.entity-status-readonly.entity-status-approuve {
    background-color: #c8e5c5;
}

.entity-status-readonly.entity-status-en-cours {
    background-color: #e1c5e1;
}

.entity-status-readonly.entity-status-ferme {
    background-color: #f5d6ba;
}

.entity-status-readonly.entity-status-annule {
    background-color: #efbfc5;
}

.entity-status-cell.entity-status-cree {
    --bs-table-bg: #d9d9d9;
    box-shadow: inset 0 0 0 9999px #d9d9d9;
}

.entity-status-cell.entity-status-valide {
    --bs-table-bg: #d7f3f1;
    box-shadow: inset 0 0 0 9999px #d7f3f1;
}

.entity-status-cell.entity-status-approuve {
    --bs-table-bg: #dff2dd;
    box-shadow: inset 0 0 0 9999px #dff2dd;
}

.entity-status-cell.entity-status-en-cours {
    --bs-table-bg: #f0dff0;
    box-shadow: inset 0 0 0 9999px #f0dff0;
}

.entity-status-cell.entity-status-ferme {
    --bs-table-bg: #fce9d6;
    box-shadow: inset 0 0 0 9999px #fce9d6;
}

.entity-status-cell.entity-status-annule {
    --bs-table-bg: #f8d7da;
    box-shadow: inset 0 0 0 9999px #f8d7da;
}

.entity-status-cell.entity-status-readonly.entity-status-cree {
    --bs-table-bg: #c5c5c5;
    box-shadow: inset 0 0 0 9999px #c5c5c5;
}

.entity-status-cell.entity-status-readonly.entity-status-valide {
    --bs-table-bg: #bee8e5;
    box-shadow: inset 0 0 0 9999px #bee8e5;
}

.entity-status-cell.entity-status-readonly.entity-status-approuve {
    --bs-table-bg: #c8e5c5;
    box-shadow: inset 0 0 0 9999px #c8e5c5;
}

.entity-status-cell.entity-status-readonly.entity-status-en-cours {
    --bs-table-bg: #e1c5e1;
    box-shadow: inset 0 0 0 9999px #e1c5e1;
}

.entity-status-cell.entity-status-readonly.entity-status-ferme {
    --bs-table-bg: #f5d6ba;
    box-shadow: inset 0 0 0 9999px #f5d6ba;
}

.entity-status-cell.entity-status-readonly.entity-status-annule {
    --bs-table-bg: #efbfc5;
    box-shadow: inset 0 0 0 9999px #efbfc5;
}

.entity-status-select.entity-status-cree {
    background-color: #d9d9d9;
}

.entity-status-select.entity-status-valide {
    background-color: #d7f3f1;
}

.entity-status-select.entity-status-approuve {
    background-color: #dff2dd;
}

.entity-status-select.entity-status-en-cours {
    background-color: #f0dff0;
}

.entity-status-select.entity-status-ferme {
    background-color: #fce9d6;
}

.entity-status-select.entity-status-annule {
    background-color: #f8d7da;
}

.entity-status-select.entity-status-readonly.entity-status-cree {
    background-color: #c5c5c5;
}

.entity-status-select.entity-status-readonly.entity-status-valide {
    background-color: #bee8e5;
}

.entity-status-select.entity-status-readonly.entity-status-approuve {
    background-color: #c8e5c5;
}

.entity-status-select.entity-status-readonly.entity-status-en-cours {
    background-color: #e1c5e1;
}

.entity-status-select.entity-status-readonly.entity-status-ferme {
    background-color: #f5d6ba;
}

.entity-status-select.entity-status-readonly.entity-status-annule {
    background-color: #efbfc5;
}

.document-upload-dropzone {
    margin-top: 0.5rem;
    margin-bottom: 0.75rem;
    padding: 1rem;
    border: 2px dashed #6c757d;
    border-radius: 0.5rem;
    background-color: #f8f9fa;
    color: #495057;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

.document-upload-dropzone.drag-over {
    border-color: #0d6efd;
    background-color: #e9f2ff;
}

.document-upload-dropzone.disabled {
    cursor: not-allowed;
    opacity: 0.65;
}