
.calendar {
  background: transparent;
  border-radius: 8px;
  padding: 1.5rem;
  box-shadow: 0 4px 12px rgba(0,0,0,.1);
  max-height: 50vh;
  overflow-y: auto;
}

.header {
  display: flex;
  /* justify-content: space-between; */
  justify-content: center;
  align-items: center;
  margin-bottom: 8px;
}

.header button {
  background: none;
  border: none;
  font-size: 18px;
  cursor: pointer;
}

.weekdays, .days {
  display: grid;
  grid-template-columns: repeat(7, minmax(20px, 1fr));
}

.weekdays div {
  font-size: 12px;
  text-align: center;
  color: #666;
}

.day {
  min-height: 60px;
  padding: 4px;
  font-size: 12px;
}

.event {
  background: var(--color4);
  color: white;
  border-radius: 4px;
  padding: 2px 4px;
  margin-top: 2px;
  cursor: pointer;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* modal */
.modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.4);
  display: none;
  align-items: center;
  justify-content: center;
}

.modal.show {
  display: flex;
}

.modal-box {
  background: white;
  padding: 16px;
  border-radius: 8px;
  min-width: 500px;
  max-width:80vw;
}
#mDesc { white-space: pre-line; }


/* background-blend-mode: multiply;  filter: hue-rotate(330deg) */

