:root {
  --primary-color: #20B2AA;
  --secondary-color: #FF7F50;
  --hover-color: #e67343;
  --background-color: #f8f9fa;
  --text-color: #495057;
  --dropdown-bg: #F8F9FA;
  --dropdown-border: #ddd;
}

body {
  font-family: 'Roboto', sans-serif;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  min-height: 100vh; /* Ensure the body takes at least the full height of the viewport */
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* intro Section Styles */
.intro {
  background-color: #519ace;
  color: #fff;
  padding: 100px 0px;
  width: 100%;
  margin: 0;
  position: relative;
  text-align: center;
}

.intro h1 {
  font-size: 2.5rem;
  margin-bottom: 1rem;
}

.intro p {
  font-size: 1.25rem;
  margin-bottom: 1.5rem;
}

.intro .btn-primary {
  background-color: var(--secondary-color);
  color: white;
  padding: 0.75rem 1.5rem;
  border: none;
  border-radius: 4px;
  text-decoration: none;
  font-size: 1rem;
  transition: background-color 0.3s;
}

.intro .btn-primary:hover {
  background-color: var(--hover-color);
}

.featured-jobs {
  padding: 2rem 0;
}

.featured-jobs .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}

.featured-jobs h2 {
  text-align: center;
  font-size: 1.5rem;
  margin-bottom: 2rem;
}

.featured-jobs .row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.job-card {
  background-color: white;
  border: 1px solid #ddd; /* Adds a border */
  border-radius: 5px; /* Rounds the corners */
  overflow: hidden;
  flex: 1;
  min-width: 15rem;
  max-width: 20rem;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* Adds a shadow */  
  transition: transform 0.3s; /* Adds a transition effect for transform */
}

.featured-jobs .job-card:hover {
  transform: translateY(-5px); /* Moves the card up on hover */
}

.job-card-body {
  padding: 1rem;
}

.job-card-title {
  font-size: 1.25rem;
  margin-bottom: 0.5rem;
}

.job-card-text {
  font-size: 1rem;
  margin-bottom: 1rem;
}

.job-card .btn-primary {
  display: block;
  text-align: center;
  background-color: var(--secondary-color);
  color: white;
  padding: 0.5rem 0;
  border: none;
  border-radius: 4px;
  text-decoration: none;
  font-size: 1rem;
  transition: background-color 0.3s;
}

.job-card .btn-primary:hover {
  background-color: var(--hover-color);
}

/* Form Section Styles */
.form-section {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    padding: 20px;
    height: 100vh;
}

.form-container {
    background: #fff;
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 5px;
    /* width: 100%; */
    max-width: 80%;
}

.form-title {
    text-align: center;
    color: #333;
    margin-bottom: 20px;
}

/* Form Styles */
.form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.form-label {
    font-weight: bold;
    color: #333;
}

.form-input {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 16px;
}

.btn-primary {
    padding: 10px;
    border: none;
    border-radius: 4px;
    background-color: var(--secondary-color);
    color: #fff;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.btn-primary:hover {
    background-color: var(--hover-color);
}

/* Success Message styles */
.form-success {
    color: lightseagreen; 
    background-color: var(--background-color);  
    border: 1px solid #c3e6cb; /* Border matching the success theme */
    padding: 10px;
    margin-bottom: 20px;
    border-radius: 4px;
    text-align: center;
}

/* Error Message Styles */
.form-error {
    color: #ff0000;
    text-align: center;
    margin-bottom: 15px;
}

/* Form Footer Styles */
.form-footer {
    text-align: center;
    margin-top: 20px;
}

.btn-link {
    color: var(--secondary-color);
    text-decoration: none;
    font-weight: bold;
}

.btn-link:hover {
    text-decoration: underline;
}

/* Table Styles */
.table-container {
    max-height: 400px; /* Adjust height as needed */
    overflow: auto; /* Enable both vertical and horizontal scrolling */
    border: 1px solid #ddd;
    border-radius: 5px;
    margin-bottom: 20px; /* Space below the table */
}

/* Table Styles */
        .table-container {
            overflow-x: auto;
            margin-top: 20px;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 10px;
        }
        th, td {
            border: 1px solid #ddd;
            padding: 10px;
            text-align: left;
        }
        th {
            background-color: #f4f4f4;
        }
        tr:nth-child(even) {
            background-color: #f9f9f9;
        }
        .btn {
            padding: 5px 10px;
            border: none;
            border-radius: 4px;
            color: #fff;
            cursor: pointer;
            text-decoration: none;
        }
        .btn-edit {
            background-color: #007bff;
        }
        .btn-delete {
            background-color: #dc3545;
        }
        .btn-edit:hover {
            background-color: #0056b3;
        }
        .btn-delete:hover {
            background-color: #c82333;
        }

/* End of form styles */



/* Footer Styles */
footer {
  background-color: #f8f9fa;
  padding: 20px 0;
  text-align: center;
  font-size: 0.9rem;
  color: #6c757d;
}

/* Responsive design */
@media (max-width: 768px) {
  .featured-jobs .job-card {
    flex: 1 1 calc(50% - 5px); /* Sets the flex-basis to half of the row minus gap */
  }
  .featured-jobs .row {
    justify-content: center; /* Centers job cards horizontally */
  }
}

@media (max-width: 576px) {
  .featured-jobs .job-card {
    flex: 1 1 100%; /* Sets the flex-basis to full width */
  }
  .featured-jobs .row {
    justify-content: center; /* Centers job cards horizontally */
  }
}
