.tm-calendar .calendar-day { font-size: 14px; line-height: 18px; height: 45px; cursor: pointer; background: #f8f8f8; border-radius: 5px; padding: 4px; position: relative; }
.tm-calendar .tm-month-name { text-transform: uppercase; }
.tm-calendar .calendar-day:hover { background: #e8e8e8; }
.tm-calendar .event-dot { padding: 0 2px; width: 8px; height: 8px; border-radius: 50%; margin: 0 auto; display: inline-block; line-height: 8px; }
.tm-calendar .event-home { background: orange; }
.tm-calendar .event-away { background: red; }
.tm-calendar .event-other { background: blue; }
.tm-calendar .calendar-days { display: flex; gap: 1px; flex-wrap: wrap; font-size: 10px; }
.tm-calendar .calendar-days > div { flex: 0 0 calc((100% - 12px) / 7); box-sizing: border-box; text-align: center; padding: 5px 0; }
.tm-calendar .calendar-grid { display: flex; gap: 1px; flex-wrap: wrap; font-size: 18px; font-weight: bold; line-height: 24px; }
.tm-calendar .calendar-grid > div { flex: 0 0 calc((100% - 12px) / 7); box-sizing: border-box; text-align: center; }
.tm-calendar .calendar-grid div { padding: 1px; }
.tm-calendar .calendar-grid .calendar-day { background-color: rgba(0,0,0,0.4); border: 1px solid rgba(255,255,255,0.3); color: #fff; }
.tm-calendar .calendar-grid .calendar-day:hover { background-color: rgba(0,0,0,0.9); }
.tm-calendar .uk-grid-small>.uk-grid-margin { margin-top: 2px; }