/* ---------- Seasonal calendar ---------- */

.seasonal-calendar {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.seasonal-month {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.75rem;
}

.seasonal-month th,
.seasonal-month td {
  border: 1px solid var(--border);
  text-align: center;
  vertical-align: top;
  padding: 2px;
}

.seasonal-month-title {
  background: var(--accent-light);
  font-weight: 600;
  padding: 0.4rem 0;
}

.seasonal-dow th {
  background: var(--muted-light, #f5f5f5);
  font-weight: 500;
  font-size: 0.7rem;
}

.seasonal-empty {
  background: #fafafa;
}

.seasonal-day {
  height: 2.2em;
}

.seasonal-date {
  font-size: 0.7rem;
  line-height: 1;
}

.seasonal-dots {
  display: flex;
  justify-content: center;
  gap: 2px;
  margin-top: 2px;
}

.calendar-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
}
