wedding-calendar {
  display: block;
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  box-sizing: border-box;
  padding: 0 10px;
}

#calendar,
.calendar-container {
  font-family: "Pretendard", sans-serif;
  width: 100%;
  max-width: none;
  margin: 0 auto;
  text-align: center;
  color: #9a7f76;
}

#calendar table,
.calendar-container table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

#calendar th,
.calendar-container th {
  padding: 8px 0;
  font-weight: 500;
  color: #c5a9a3;
}

#calendar td,
.calendar-container td {
  padding: 10px 0;
  font-size: 1.2rem;
}

.month-title {
  text-align: center;
  font-size: calc(1.4rem + 4px);
  font-weight: 600;
  margin-bottom: 8px;
  color: var(--warm-accent);
  font-family: "GowoonDodum";
}

.wedding-calendar .sun,
.wedding-calendar .sunday span {
  color: #d28a9b;
}

.wedding-calendar td span {
  display: inline-block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
}

.wedding-calendar td.highlight span {
  background: var(--warm-accent);
  color: white;
  border-radius: 50%;
}
