/* Custom styles for the login page */
.modal {
	z-index: 9999 !important; /* Ensure modal is on top */
}
.modal-backdrop {
	z-index: 9998 !important; /* Ensure backdrop is behind the modal */
}
body {
    background-color: #f7f7f7;
}
.sidebar {
	background-color: green !important;
    z-index: 1000; /* Ensure sidebar stays beneath the top nav */
}

.container-fluid.p-4 {
    margin-left: 250px; /* Adjust margin to avoid overlap with the sidebar */
    z-index: 1; /* Ensure content stays above sidebar */
}

.card {
    width: 100%;
    max-width: 400px;
    border-radius: 15px;
}

/* Limit the size of the logo */
.logo {
    width: 100px; /* Set the desired width */
    height: auto; /* Maintain aspect ratio */
    max-width: 100%; /* Ensure it scales down for smaller screens */
    display: block;
    margin: 0 auto; /* Center the logo horizontally */
}
.form-control {
    border-radius: 10px;
}

.btn-primary {
    background-color: #007bff;
    border-color: #007bff;
    border-radius: 10px;
}

.alert {
    border-radius: 10px;
}

@media (max-width: 768px) {
    .card {
        margin: 20px;
    }
}
/* Sidebar styles */
.sidebar {
	width: 250px; /* Adjust as needed to fit the longest menu name */
    min-width: 250px;
    max-width: 250px;
    width: 250px;
    min-height: 100vh;
    background-color: #007bff; /* Bootstrap primary color */
}

.sidebar h4 {
    color: #fff;
}

.sidebar .nav-link {
    font-size: 1.1rem;
    padding: 10px 15px;
}

.sidebar .nav-link:hover {
    background-color: #0056b3;
    color: #fff;
    text-decoration: none;
}

.sidebar .nav-link i {
    margin-right: 8px;
}

/* Card colors for variety */
.card.mb-4.shadow-sm.bg-light {
    background-color: #e9f7fc; /* Light blue */
}

.card.table-bordered {
    background-color: #f7f7f7; /* Light gray */
}

/* Button styles */
.btn-success {
    background-color: #28a745;
    border: none;
    border-radius: 5px;
    color: #fff;
}

/* Table styling */
.table-bordered {
    border: 1px solid #dee2e6;
}

.table-bordered thead {
    background-color: #343a40;
    color: #fff;
}

.table-striped tbody tr:nth-of-type(odd) {
    background-color: #f8f9fa;
}
/* Custom styles for the Report page */
.btn-success {
    background-color: #28a745;
    border-radius: 5px;
    color: #fff;
}

.card {
    border-radius: 10px;
}

.table-responsive {
    margin-top: 20px;
}

.thead-dark th {
    color: #fff;
    background-color: #343a40;
}
.table {
    table-layout: auto; /* Allows cells to adjust based on content */
    word-wrap: break-word; /* Wrap long text */
    white-space: normal; /* Enable text wrapping */
}

.table th, .table td {
	overflow-wrap: break-word; /* Break words if they are too long */
    max-width: 150px; /* Optional: Adjust to limit cell width */
    vertical-align: middle; /* Align text to middle for better readability */
    text-align: left;
    white-space: wrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.btn-success {
    background-color: #28a745;
    border-radius: 5px;
    color: #ffffff;
}
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

.container {
	max-width: 100%; /* Full-width container to avoid unnecessary scrolling */
	overflow-x: auto; /* Allow horizontal scrolling only if absolutely needed */
    flex: 1;
    display: flex;
    flex-direction: column;
}

footer.footer {
    position: fixed; /* Stick the footer to the bottom */
    bottom: 0;
    left: 0;
    width: 100%; /* Make sure it spans the full width */
    background-color: #f8f9fa;
    text-align: center;
    padding: 1rem 0;
}
.content-wrapper {
    padding: 20px;
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1);
}

