.mod-crazy-calendar .table-container-crazy { width:100%; margin:20px 0; overflow-x:auto; border-radius:8px; border:1px solid #eee; }
.mod-crazy-calendar .table-crazy { width:100%; border-collapse:collapse; font-family:sans-serif; background:#fff; color:#333; }
.mod-crazy-calendar .table-crazy th,
.mod-crazy-calendar .table-crazy td { padding:15px; border-bottom:1px solid #eee; text-align:center; overflow-wrap:anywhere; }
.mod-crazy-calendar .table-crazy th { background:#f8f9fa; font-weight:bold; color:#333; }
.mod-crazy-calendar .table-crazy tbody tr { transition:background-color .2s; }
.mod-crazy-calendar .table-crazy tbody tr:hover { background-color:#f1b85e; }
.mod-crazy-calendar .highlight-home { color:#000; }
.mod-crazy-calendar .table-crazy .crazy-event-past td,
.mod-crazy-calendar .table-crazy .crazy-event-past td strong,
.mod-crazy-calendar .table-crazy .crazy-event-past td::before { color:#737373; }
.mod-crazy-calendar .crazy-calendar-message { padding:15px; background:#f8f9fa; border-radius:8px; }
@media screen and (max-width:768px) {
  .mod-crazy-calendar .table-crazy thead { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .mod-crazy-calendar .table-crazy,
  .mod-crazy-calendar .table-crazy tbody,
  .mod-crazy-calendar .table-crazy tbody tr { display:block; width:100%; }
  .mod-crazy-calendar .table-crazy tbody tr { margin-bottom:15px; border-bottom:2px solid #f1b85e; }
  .mod-crazy-calendar .table-crazy td { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:10px; box-sizing:border-box; width:100%; text-align:right; border-bottom:1px solid #f9f9f9; min-height:40px; }
  .mod-crazy-calendar .table-crazy td::before { content:attr(data-label); font-weight:bold; color:#777; text-align:left; }
  .mod-crazy-calendar .table-crazy td.highlight-home { display:block; }
  .mod-crazy-calendar .table-crazy td.highlight-home::before { float:left; width:45%; margin-right:5%; }
}
