#agenda .agenda-day[hidden] { display: none; }
#agenda .agenda-entry-copy > :first-child { margin-top: 0; }
#agenda .agenda-entry-copy > :last-child { margin-bottom: 0; }
#agenda .agenda-entry-copy { overflow-wrap: anywhere; }
#agenda .agenda-entry-copy img { max-width: 100%; height: auto; }
#agenda .day-tabs button:focus-visible { outline: 3px solid #c8a151; outline-offset: 4px; }
#agenda .agenda-day:focus-visible { outline: 2px solid #c8a151; outline-offset: 4px; }

/* Match the icon box to the first heading line at each existing breakpoint. */
#agenda .agenda-event { --agenda-heading-size: 24px; }
#agenda .agenda-event .agenda-icon {
  height: calc(var(--agenda-heading-size) * 1.3);
  line-height: 1;
  align-items: center;
}
#agenda .agenda-icon svg { display: block; width: 1em; height: 1em; flex-shrink: 0; }
#agenda .agenda-event-main,
#agenda .agenda-meta > div,
#agenda .agenda-title { min-width: 0; }
#agenda .agenda-event h4,
#agenda .agenda-title { overflow-wrap: break-word; }
@media (max-width: 1200px) {
  #agenda .agenda-event { --agenda-heading-size: 22px; }
}
@media (max-width: 600px) {
  #agenda .agenda-event { --agenda-heading-size: 18px; }
  #agenda .agenda-break {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: 6px 12px;
  }
  #agenda .agenda-break .agenda-icon {
    grid-column: 1;
    grid-row: 1 / span 2;
    width: 24px;
  }
  #agenda .agenda-break .agenda-time {
    grid-column: 2;
    width: auto;
    justify-content: flex-start;
  }
  #agenda .agenda-break .agenda-title {
    grid-column: 2;
    width: auto;
  }
}
/* Align pause icons and times with the first text line, even in tall rows. */
#agenda .agenda-break {
  --agenda-break-line: 26.4px;
  align-items: flex-start;
}
#agenda .agenda-break .agenda-icon {
  height: var(--agenda-break-line);
  align-self: flex-start;
}
#agenda .agenda-break .agenda-time { min-height: var(--agenda-break-line); }
@media (max-width: 1200px) {
  #agenda .agenda-break { --agenda-break-line: 24px; }
}
@media (max-width: 600px) {
  #agenda .agenda-break { --agenda-break-line: 16.8px; }
  #agenda .agenda-break .agenda-icon { grid-row: 1; }
}