:root {
  --primary-color: #0d6efd;
  --secondary-color: #6c757d;
  --success-color: #198754;
  --info-color: #0dcaf0;
  --warning-color: #ffc107;
  --danger-color: #dc3545;
}

/* Custom styles for Angus Bin Calendar PWA */

.bin-card {
  transition: transform 0.2s;
}

.bin-card:hover {
  transform: translateY(-2px);
}

.bin-card__header {
  font-weight: bold;
}

.bin-card__date {
  font-size: 1.2rem;
}

/* Bin Colors */
.bg-bin-blue {
  background-color: #0d6efd !important;
  color: white;
}

.bg-bin-brown {
  background-color: #795548 !important;
  color: white;
}

.bg-bin-purple {
  background-color: #6f42c1 !important;
  color: white;
}

.bg-bin-grey {
  background-color: #6c757d !important;
  color: white;
}

.bg-bin-green {
  background-color: #198754 !important;
  color: white;
}

/* Collection Status Colors */
.bg-collection-today {
  background-color: #f8d7da !important; /* Light red/pink */
  color: #842029;
}

.bg-collection-soon {
  background-color: #fff3cd !important; /* Light yellow */
  color: #664d03;
}

.bg-collection-future {
  background-color: #ffffff !important;
  color: #212529;
}

/* List View Styling */
.collection-row {
  display: flex;
  border: 1px solid #dee2e6;
  margin-bottom: -1px; /* Collapse borders */
}

.collection-row:first-child {
  border-top-left-radius: 0.375rem;
  border-top-right-radius: 0.375rem;
}

.collection-row:last-child {
  border-bottom-left-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem;
  margin-bottom: 0;
}

.bin-name-cell {
  flex: 0 0 40%;
  padding: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  text-align: center;
  color: white;
  text-shadow: 0 1px 2px rgba(0,0,0,0.2);
}

.collection-info-cell {
  flex: 1;
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.days-remaining {
  font-weight: bold;
  font-size: 1.1rem;
  margin-bottom: 0.25rem;
}

.collection-date {
  font-size: 0.9rem;
  opacity: 0.8;
}

/* FullCalendar Overrides */
.fc-event {
  cursor: pointer;
}
.fc-daygrid-event {
  white-space: normal;
}

/* Loading spinner overlay */
.loading-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

.d-none {
  display: none !important;
}
