#calendarTable a { color: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: .18em; }
#calendarTable td { white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 700px) {
  .guide-detail-page .container { min-width: 0; width: 100%; }
  .guide-detail-page .card { min-width: 0; padding: 20px; }
  #calendarTable, #calendarTable tbody, #calendarTable tr, #calendarTable td { display: block; width: 100%; }
  #calendarTable { min-width: 0; border: 0; }
  #calendarTable thead { display: none; }
  #calendarTable tr { margin: 0 0 14px; border: 1px solid rgba(160,160,160,.35); border-radius: 14px; overflow: hidden; }
  #calendarTable td { box-sizing: border-box; padding: 14px 16px; border: 0; }
  #calendarTable td + td { border-top: 1px solid rgba(160,160,160,.22); }
  #calendarTable td::before { content: attr(data-label); display: block; margin-bottom: 6px; font: 600 .72rem/1.3 sans-serif; letter-spacing: .08em; text-transform: uppercase; opacity: .75; }
  #calendarTable .calendar-empty td::before { display: none; }
  .guide-detail-page .table-wrap { overflow: visible; }
  #downloadCsv { width: 100%; white-space: normal; }
  #stackChips { max-width: 100%; }
}
