@font-face {
    font-family: 'safont';
    src: url('/fonts/trajanpro.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

body {
    font-family: 'safont', var(--bs-font-sans-serif);
}

.sticky-table > thead > tr > th {
    position: sticky;
    top: 0;
    background-color: white); /* or your table header bg */
    color: black;
    z-index: 5;
    border: 1px solid var(--bs-secondary); /* match Bootstrap's table border */
}

.sticky-table {
    border-collapse: separate;
    border-spacing: 0;
}

.z-4 {
    z-index: 4;
}


.form-check-input-lg {
    transform: scale(1.5);
    margin-right: 0.5rem; /* Optional: adjust spacing */
}

.compact-select {
    background-position: right 0.25rem center;
    padding-right: 1.5rem;
}

.modal-placeholder {
    opacity: 0.5;
    filter: blur(3px);
}

.table-danger-row td,
.table-danger-row th {
    border-top: 2px solid var(--bs-danger);
    border-bottom: 2px solid var(--bs-danger);
}

    .table-danger-row td:first-child,
    .table-danger-row th:first-child {
        border-left: 2px solid var(--bs-danger);
    }

    .table-danger-row td:last-child,
    .table-danger-row th:last-child {
        border-right: 2px solid var(--bs-danger);
    }

.table-subtotal-row td,
.table-subtotal-row th {
    border-top: 2px solid var(--bs-primary);
    border-bottom: 2px solid var(--bs-primary);
}

    .table-subtotal-row td:first-child,
    .table-subtotal-row th:first-child {
        border-left: 2px solid var(--bs-primary);
    }

    .table-subtotal-row td:last-child,
    .table-subtotal-row th:last-child {
        border-right: 2px solid var(--bs-primary);
    }

.bg-overlay {
    background-color: #ff5733;
    opacity: 0.3;
    z-index: 0;
    pointer-events: none;
}

.col-lg-2_20 {
    flex: 0 0 20%;
    max-width: 19%;
}