.calendar-container {
  max-width: 800px;
  margin: 0 auto;
}

.sections-info {
  background-color: #f8f9fa;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 30px;
}

.sections-info h4 {
  color: #333;
  margin-bottom: 15px;
}

.sections-info .table {
  margin-bottom: 0;
}

.sections-info .table th {
  background-color: #e9ecef;
}

#calendar {
  background-color: white;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.fc-event {
  cursor: pointer;
}

.fc-event-title {
  font-weight: bold;
}

.fc-daygrid-day.fc-day-today {
  background-color: #fff3cd !important;
}

.fc-daygrid-day.fc-day-past {
  background-color: #f8f9fa;
}

.fc-daygrid-day.fc-day-future {
  background-color: white;
}

.fc-toolbar-title {
  font-size: 1.5em !important;
  color: #333;
}

.fc-button-primary {
  background-color: #0d6efd !important;
  border-color: #0d6efd !important;
}

.fc-button-primary:hover {
  background-color: #0b5ed7 !important;
  border-color: #0a58ca !important;
}

.fc-button-primary:disabled {
  background-color: #6c757d !important;
  border-color: #6c757d !important;
}

.required-field {
  border-color: #dc3545 !important;
  background-color: #fff8f8 !important;
}

.required-field:focus {
  border-color: #dc3545 !important;
  box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25) !important;
}

.form-control.is-valid,
.form-select.is-valid {
  border-color: #198754 !important;
  background-color: #f8fff9 !important;
}

.form-control.is-valid:focus,
.form-select.is-valid:focus {
  border-color: #198754 !important;
  box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25) !important;
}

.navbar-brand img {
  max-height: 40px;
  width: auto;
}

/* Holiday and Interruption Cards */
#holidaysContainer,
#interruptionsContainer {
  height: 100%;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

#holidaysContainer .card-title,
#interruptionsContainer .card-title {
  color: #333;
  font-size: 1.2rem;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #dee2e6;
}

.holidays-list,
.interruptions-list {
  max-height: 300px;
  overflow-y: auto;
}

.holidays-list .list-group-item,
.interruptions-list .list-group-item {
  padding: 0.75rem 1rem;
  border-left: none;
  border-right: none;
}

.holidays-list .list-group-item:first-child,
.interruptions-list .list-group-item:first-child {
  border-top: none;
}

.holidays-list .list-group-item:last-child,
.interruptions-list .list-group-item:last-child {
  border-bottom: none;
}
