body, ul {
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Arial', sans-serif;
    display: flex;
    height: 100vh;
    background-color: #f4f4f4;
}

.spacer {
    margin-top: 40px; /* Adjust the value as needed */
}

.message-success {
    color: green;
    font-weight: bold;
    margin-top: 10px;
}
.message-error {
    color: red;
    font-weight: bold;
    margin-top: 10px;
}


.sidebar {
    width: 250px;
    height: 100vh;
    background-color: #202020;
    color: #FFFFFF; 
    position: fixed;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 0;
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.5);
}

.logo {
    margin-bottom: 50px;
}

.logo img {
    width: 180px; 
    height: auto;
}

.nav-links {
    list-style: none;
    width: 100%;
    padding-left: 0;
}

.nav-links li {
    width: 84%;
}

.nav-links a {
    display: block;
    width: 100%;
    padding: 10px 20px;
    color: #FFFFFF; 
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: all 0.3s ease;
    position: relative;
}

.nav-links a .icon {
    display: inline-block;
    width: 24px; 
    height: 24px; 
    margin-right: 15px;
    font-size: 20px; 
}

/* Hover Effect */
.nav-links a:hover {
    background-color: #E41316;
}

/* Active Link Style */
.nav-links a.active {
    background-color: #E41316;
    color: #FFFFFF;
}

.nav-links a.active .icon {
    color: #FFFFFF; 
}

/* Common styles for .content */
.content {
    margin-left: 250px;
    padding: 40px;
    width: calc(100% - 250px);
    height: 100vh;
    overflow-y: auto;
    background-color: #f0f0f0;
    display: grid;
    gap: 1px; /* Adds space between grid items */
    box-sizing: border-box;
}

.content-no-sidebar {
    padding: 40px;
    width: 100%;
    height: 100vh;
    overflow-y: auto;
    background-color: #f0f0f0;
    display: grid;
    gap: 1px; /* Adds space between grid items */
    box-sizing: border-box;
}

/* 1-column layout */
.one-column {
    grid-template-columns: 1fr; /* 1 full-width column */
}

/* 2-column layout */
.two-columns {
    grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
}

.two-columns-a {
    display: grid;
    grid-template-columns: 1fr 2fr;
}

/* 3-column layout */
.three-columns {
    grid-template-columns: repeat(3, 1fr); /* 3 equal-width columns */
}

/* Layout with 2 rows: first row has 2 columns, second row has 1 column */
.two-rows {
    grid-template-columns: repeat(2, 1fr); /* First row with 2 columns */
    grid-template-rows: auto auto; /* Two rows */
}

/* New layout: 2 rows, both rows with 1 full-width column */
.two-full-rows {
    grid-template-columns: 1fr; /* Single column for both rows */
    grid-template-rows: auto auto; /* Two rows */
}

/* New layout: 2 rows, both rows with 1 full-width column */
.two-rows-two-columns {
    grid-column: span 3;
    grid-template-columns: repeat(3, 1fr); /* Single column for both rows */
    grid-template-rows: auto auto auto; /* Two rows */
}

/* Span the second row across both columns (for the two-rows layout) */
.full-width-column {
    grid-column: span 2; /* Makes this column span both columns */
}

/* Column styling (shared by all layouts) */
.column {
    background-color: #f0f0f0;
    padding: 20px;
    box-sizing: border-box;
}

/* Single-column layout on smaller screens */
@media (max-width: 425px) {
    .content {
        grid-template-columns: 1fr; /* All layouts collapse to 1 column */
    }

    .full-width-column {
        grid-column: span 1; /* Ensure full-width columns behave normally */
    }
}




/* Base Form Styling */
.form {
    background-color: #f4f4f4;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    margin: 0 auto;
}

.form-300 {
    max-width: 300px;
    max-height: 350px;
}

.form-450 {
    max-width: 450px;
    max-height: 950px;
}

.form-600 {
    max-width: 600px;
    max-height: 350px;
}

.form-800 {
    max-width: 800px;
    max-height: 350px;
}

.form-900 {
    max-width: 900px;
    max-height: 1200px;
}


/* Form Header Styling */
.form-header {
    background-color: #202020; /* Red background color */
    color: #FFFFFF; /* White text color */
    padding: 12px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.form-header h2 {
    margin: 0;
    font-size: 16px;
}

.form-body {
    padding: 20px; /* Adjust padding as needed */
}

.form .form-group {
    margin-bottom: 20px;
}

.form .form-group label {
    display: block;
    font-weight: bold;
    color: #1A1A1A;
    margin-bottom: 8px;
}

.form .form-group input, 
.form .form-group textarea {
    width: 96%;
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 14px;
    background-color: #fff;
    color: #1A1A1A;
    transition: border-color 0.3s ease;
}

.form .form-group input:focus,
.form .form-group textarea:focus {
    border-color: #E41316; /* Updated red color */
    outline: none;
}

.form button[type="submit"] {
    background-color: #E41316; /* Updated red color */
    color: #FFFFFF;
    padding: 12px 20px;
    border: none;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.form button[type="submit"]:hover {
    background-color: #F44C4C;
}




/* file upload button */
input[type="file"]::file-selector-button {
    border-radius: 4px;
    padding: 0 16px;
    height: 40px;
    cursor: pointer;
    background-color: white;
    border: 1px solid #606060;
    box-shadow: 0px 1px 0px rgba(0, 0, 0, 0.05);
    margin-right: 16px;
    transition: background-color 200ms;
    font-size: 14px;
  }
  
  /* file upload button hover state */
  input[type="file"]::file-selector-button:hover {
    background-color: #f3f4f6;
    border-color: #C10D12;
  }
  
  /* file upload button active state */
  input[type="file"]::file-selector-button:active {
    background-color: #e5e7eb;
  }

 

/* Table Container Styling */
.table-container {
    position: relative; /* Set relative position for containing absolute elements */
    margin-top: 0px;
    padding-bottom: 60px;
}

/* Table Styling */
.styled-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    font-size: 14px;
}

/* Table Header and Cell Styling */
.styled-table th, .styled-table td {
    padding: 12px 15px;
    text-align: left;
    border-bottom: 1px solid #ddd;
}

.styled-table th {
    background-color: #E41316;
    color: #fff;
    font-size: 16px;
}

.styled-table tr:nth-child(even) {
    background-color: #f4f4f4;
}

.styled-table tr:hover {
    background-color: #e9e9e9;
}

/* Remove border radius from the last row cells to prevent overlap issues */
.styled-table tr:last-child td {
    border-bottom: none;
}

/* Table pagination styling */
.pagination {
    position: absolute;
    bottom: 10px;
    right: 10px;
    padding: 10px;
    font-size: 14px;
}

/* Make pagination links white */
.pagination a {
    color: rgb(0, 0, 0);
    text-decoration: none; /* Optional: to remove underline */
}

.pagination a.active {
    font-weight: bold;
    color: #E41316;
    
}

/* Optional: Change color on hover */
.pagination a:hover {
    color: #E41316; /* A lighter shade of white or your preferred hover color */
}




.combo-box-container {
    position: relative;
    width: 100%; /* Adjust width as needed */
    
}

.combo-box-label {
    display: block; /* Ensure the label takes up its own line */
    font-size: 14px; /* Font size for the label */
    margin-bottom: 10px; /* Space between the label and combo box */
}

.combo-box {
    appearance: none; /* Remove default styling */
    background-color: #ffffff; /* Red background color */
    color: rgb(0, 0, 0); /* White text color for contrast */
    border: 1px solid #606060; /* Border to match the background */
    border-radius: 5px; /* Rounded corners */
    padding: 12px; /* Padding for text */
    font-size: 14px; /* Text size */
    width: 100%; /* Full width of the container */
    cursor: pointer; /* Pointer cursor on hover */
    outline: none; /* Remove default outline */
}

.combo-box::-ms-expand {
    display: none; /* Hide default dropdown arrow in IE */
}

.combo-box-container::after {
    content: '▼'; /* Custom dropdown arrow */
    position: absolute;
    right: 10px;
    top: 70%;
    transform: translateY(-50%);
    color: #202020; /* Arrow color */
    font-size: 14px; /* Arrow size */
    pointer-events: none; /* Allow clicks to pass through */
}

.combo-box:focus {
    border-color: #C10D12; /* Darker red for focus */
    outline: none; /* Remove default outline */
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.2); /* Subtle shadow */
}


/* Styling for text input fields */
input[type="text"], 
input[type="email"], 
input[type="password"] {
    width: 100%;
    padding: 12px;
    border: 1px solid #606060;
    border-radius: 5px;
    font-size: 14px;
    background-color: #fff;
    color: #1A1A1A;
    transition: border-color 0.3s ease;
    box-sizing: border-box;
}

input[type="text"]:focus, 
input[type="email"]:focus, 
input[type="password"]:focus {
    border-color: #E41316; /* Red color on focus */
    outline: none;
    box-shadow: 0 0 5px rgba(228, 19, 22, 0.2); /* Subtle red shadow on focus */
}

/* Styling for submit buttons */
input[type="submit"] {
    background-color: #E41316; /* Red background */
    color: #FFFFFF;
    padding: 12px 20px;
    border: none;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.3s ease;
    display: inline-block;
}

input[type="submit"]:hover {
    background-color: #F44C4C; /* Lighter red on hover */
}

input[type="submit"]:active {
    background-color: #C10D12; /* Darker red on active */
}

input[type="submit"]:disabled {
    background-color: #ccc; /* Grey background when disabled */
    cursor: not-allowed;
}

/* Container for the radio button and label */
.radio-group {
    margin-bottom: 20px;
}

.radio-group label {
    font-size: 16px;
    color: #1A1A1A;
    cursor: pointer;
    transition: color 0.3s ease;
    line-height: 25px; /* Matches the height of the radio button */
}

.radio-group input[type="radio"] {
    appearance: none;
    width: 18px;
    height: 18px;
    border: 2px solid #606060;
    border-radius: 50%;
    position: relative;
    background-color: #fff;
    outline: none;
    cursor: pointer;
    transition: border-color 0.3s ease, background-color 0.3s ease;
    margin-right: 10px;
    vertical-align: middle; /* Aligns the radio button vertically with the label */
}

/* Checked state */
.radio-group input[type="radio"]:checked {
    border-color: #E41316;
    background-color: #E41316;
}

/* Inner dot for the checked state */
.radio-group input[type="radio"]:checked::before {
    content: '';
    width: 8px;
    height: 8px;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* Hover effect */
.radio-group input[type="radio"]:hover {
    border-color: #E41316;
}

/* Focus state */
.radio-group input[type="radio"]:focus {
    box-shadow: 0 0 5px rgba(228, 19, 22, 0.5);
    border-color: #E41316;
}

fieldset {
    border: 2px solid #E41316; /* Red border to match the theme */
    border-radius: 8px; /* Rounded corners for the fieldset */
    padding: 20px; /* Add some padding inside the fieldset */
    background-color: #f4f4f4; /* Light background color for the fieldset */
    margin-bottom: 20px; /* Add space below the fieldset */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
}

legend {
    font-size: 16px; /* Font size for the legend */
    font-weight: bold; /* Make the legend text bold */
    color: #ffffff; /* Dark text color for the legend */
    padding: 0 10px; /* Add padding around the legend text */
    background-color: #E41316; /* White background for the legend */
    border: 5px solid #E41316; /* Border to match the fieldset */
    border-radius: 5px; /* Rounded corners for the legend */
}

fieldset .form-group {
    margin-bottom: 15px; /* Space between form groups inside the fieldset */
}

fieldset .form-group label {
    font-size: 14px; /* Font size for labels inside the fieldset */
    font-weight: bold; /* Bold labels */
    color: #1A1A1A; /* Dark text color */
}

fieldset .form-group input,
fieldset .form-group textarea {
    width: 96%; /* Full width inputs */
    padding: 10px; /* Padding inside inputs */
    border: 1px solid #ccc; /* Light border for inputs */
    border-radius: 5px; /* Rounded corners for inputs */
}

fieldset button[type="submit"] {
    background-color: #E41316; /* Red background for the submit button */
    color: #fff; /* White text color */
    padding: 12px 20px; /* Padding inside the button */
    border: none; /* Remove border */
    border-radius: 5px; /* Rounded corners */
    font-size: 14px; /* Font size */
    cursor: pointer; /* Pointer cursor on hover */
}

fieldset button[type="submit"]:hover {
    background-color: #F44C4C; /* Lighter red on hover */
}


