/* Reset */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  }

/* Body */

body {
font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif, serif;
background-color: #f4f6f8;
color: #333;
}

/* Header */

header {
background-color: rgb(37, 99, 235);
color: white;
padding: 20px;
text-align: center;
}

header p {
margin-top: 8px;
font-size: 14px;
}

/* Sections */

section {
max-width: 800px;
margin: 20px auto;
background-color: white;
padding: 20px;
border-radius: 6px;
}

/* Job Form */

.job-form form {
display: flex;
flex-direction: column;
gap: 12px;
}

.job-form input,
.job-form select {
padding: 10px;
font-size: 14px;
}

/* Buttons */

button {
padding: 10px;
background-color: #4b5563;
color: white;
border: none;
cursor: pointer;
border-radius: 6px;
}

button:hover {
background-color: #374151;
}

/* Job Card */

.job-card {
border: 1px solid #ddd;
padding: 12px;
border-radius: 5px;
margin-bottom: 10px;
}

/* Navbar */

.custom-navbar {
background-color: #2c3e50;
}

/* Primary Button */

.btn-primary {
background-color: #16a085;
border-color: #16a085;
}

.btn-primary:hover {
background-color: #138d75;
border-color: #138d75;
}

/* Cards */

.card {
border: none;
border-radius: 8px;
}

/* Table */

.table thead {
background-color: #f1f3f5;
}

.table tbody tr:hover {
background-color: #f1f5f9;
transition: 0.2s;
}

td:nth-child(5),
th:nth-child(5) {
text-align: center;
}

td .btn {
margin-right: 5px;
}

.table a {
text-decoration: none;
color: #2563eb;
}

.table a:hover {
text-decoration: underline;
}

/* Dashboard Status Cards */

/* Applied */

.card.status-applied {
background-color: #e8f0fe !important;
color: #1a73e8 !important;
}

/* Interview */

.card.status-interview {
background-color: #fff7ed !important;
color: #b45309 !important;
}

/* Rejected */

.card.status-rejected {
background-color: #fee2e2 !important;
color: #b91c1c !important;
}

/* Selected */

.card.status-selected {
background-color: #dcfce7 !important;
color: #047857 !important;
}
/* Dashboard card hover effect */

.card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}
/* Actions column layout */

td:last-child {
  white-space: nowrap;
}
/* Mobile table improvement */

@media (max-width: 768px) {

  table {
    font-size: 14px;
  }

  .btn-sm {
    padding: 4px 6px;
    font-size: 12px;
  }

}
/* Resume download link */

.download-link {
  font-size: 13px;
  color: #2563eb;
  text-decoration: none;
}

.download-link:hover {
  text-decoration: underline;
}
/* Better table on small screens */

@media (max-width: 768px) {

  .table {
    font-size: 13px;
  }

  .download-link {
    font-size: 12px;
  }

}
/* Dark Mode */

.dark-mode {
  background-color: #1f2937;
  color: white;
}

.dark-mode .card {
  background-color: #374151;
  color: white;
}

.dark-mode .table {
  color: white;
}

.dark-mode .table thead {
  background-color: #4b5563;
}

.filter-btn.active {
  background-color: #2563eb;
  color: white;
}

#statusChart {
  max-width: 450px;
  max-height: 450px;
  margin: auto;
  display: block;
}