/* MSSL compact widget refinement v2.8.4. */
.mssl-calendar .mssl-snapshot-grid { gap: 13px; }
.mssl-calendar .mssl-snapshot {
  border-radius: 16px;
  box-shadow: 0 8px 23px rgba(18,62,91,.075);
}
.mssl-calendar .mssl-snapshot > header {
  min-height: 66px;
  padding: 10px 14px;
}
.mssl-calendar .mssl-snapshot__eyebrow { display: none; }
.mssl-calendar .mssl-snapshot > header h3 {
  font-size: clamp(1rem,1.55vw,1.18rem);
  margin: 0 0 4px;
}
.mssl-calendar .mssl-snapshot > header p {
  font-size: .54rem;
  letter-spacing: .025em;
}
.mssl-calendar .mssl-snapshot__count {
  flex-basis: 29px;
  font-size: .72rem;
  height: 29px;
}
.mssl-calendar .mssl-snapshot__events {
  gap: 6px;
  padding: 8px;
}
.mssl-calendar .mssl-snapshot-event {
  border-radius: 11px;
  gap: 8px;
  grid-template-columns: 42px minmax(0,1fr) 23px;
  padding: 7px;
}
.mssl-calendar .mssl-snapshot-event > time {
  border-radius: 9px;
  height: 47px;
  width: 42px;
}
.mssl-calendar .mssl-snapshot-event > time strong { font-size: 1.02rem; }
.mssl-calendar .mssl-snapshot-event > time span,
.mssl-calendar .mssl-snapshot-event > time small { font-size: .42rem; }
.mssl-calendar .mssl-snapshot-event__type {
  font-size: .42rem;
  padding: 3px 5px;
}
.mssl-calendar .mssl-snapshot-event h4 {
  font-size: .75rem;
  line-height: 1.18;
  margin: 4px 0 3px;
}
.mssl-calendar .mssl-snapshot-event p { font-size: .54rem; }
.mssl-calendar .mssl-snapshot-event p > span { height: 5px; width: 5px; }
.mssl-calendar .mssl-snapshot-event__arrow {
  font-size: .75rem;
  height: 23px;
  width: 23px;
}
.mssl-calendar .mssl-snapshot__empty {
  min-height: 68px;
  padding: 10px;
}
.mssl-calendar .mssl-snapshot__empty > span {
  height: 23px;
  margin-bottom: 5px;
  width: 23px;
}
.mssl-calendar .mssl-snapshot__empty strong { font-size: .72rem; }
.mssl-calendar .mssl-snapshot__empty small { font-size: .57rem; }

@media (max-width: 480px) {
  .mssl-calendar .mssl-snapshot > header { min-height: 63px; padding: 9px 12px; }
  .mssl-calendar .mssl-snapshot-event { grid-template-columns: 40px minmax(0,1fr); }
  .mssl-calendar .mssl-snapshot-event > time { height: 45px; width: 40px; }
}

@media print {
  @page { size: A4 landscape; margin: 8mm; }
}
