/* Aplikasi Kalender */

.cal {
  background: var(--bg);
}
.cal .nav-head {
  background: var(--bg);
  padding-bottom: 0;
}
.cal-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.cal-title .large-title span {
  color: #ff3b30;
  font-weight: 400;
}
.cal-wd {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  text-align: center;
  font-size: 12px;
  color: var(--sub);
  padding: 4px 0 6px;
  border-bottom: 0.5px solid var(--sep);
  margin: 0 -16px;
}
.cal-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  padding: 6px 4px 10px;
  row-gap: 4px;
  border-bottom: 0.5px solid var(--sep);
  touch-action: pan-y;
}
.cal-d {
  position: relative;
  justify-self: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-size: 19px;
  display: grid;
  place-items: center;
}
.cal-d.sun {
  color: var(--sub);
}
.cal-d.today {
  color: #ff3b30;
  font-weight: 600;
}
.cal-d.sel {
  background: var(--text);
  color: var(--bg);
  font-weight: 600;
}
.cal-d.today.sel {
  background: #ff3b30;
  color: #fff;
}
.cal-d i {
  position: absolute;
  bottom: 2px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--sub);
}
.cal-ev-head {
  padding: 14px 16px 8px;
  font-size: 15px;
  font-weight: 600;
}
.cal .list.inset {
  background: var(--fill2);
}
.ev {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
}
.ev + .ev::before {
  content: "";
  position: absolute;
  top: 0;
  left: 26px;
  right: 0;
  height: 0.5px;
  background: var(--sep);
}
.ev-bar {
  width: 4px;
  align-self: stretch;
  border-radius: 2px;
  background: #ff3b30;
}
.ev .icon-btn {
  color: var(--sub);
}
.ev .icon-btn svg {
  width: 18px;
  height: 18px;
}
/* Ulang tahun */
.ev.bday .ev-bar {
  background: #af52de;
}
