.event-results-toolbar { display:flex; align-items:center; justify-content:flex-end; gap:16px; margin:8px 0 20px; }
.event-results-toolbar[hidden] { display:none; }
.course-list .course-card-preview-link:not(.event-row-link) { flex:1 1 auto; }
.course-list .course-card-preview-link:not(.event-row-link) > .course-card-image { flex-shrink:0; }
.course-list .course-card-preview-link:not(.event-row-link) .card-footer-line { margin-top:auto; }
.is-event-cards .course-card-body { padding-bottom:8px; }
.is-event-cards .course-title { font-size:19px; line-height:1.35; font-weight:600; }
.is-event-cards .course-source-line,
.is-event-cards .course-card-meta,
.is-event-cards .card-footer-line { font-size:16px; line-height:1.45; font-weight:400; }
.is-event-cards .course-source-line,
.is-event-cards .course-card-meta { color:#354154; }
.is-event-cards .card-footer-line .card-icon-text { font-size:16px; line-height:1.45; font-weight:400; }
.is-event-cards .course-source-line { white-space:normal; }
.is-event-list,.is-event-cards { --event-action-color:#647284; --event-action-divider:#cbd8e4; }
:where(.is-event-list,.is-event-cards) .listing-card-action:not(.is-active) { color:var(--event-action-color); }
:where(.is-event-list,.is-event-cards) .listing-card-action:hover { color:#0b75ae; }
.is-event-cards .listing-card-actions { min-height:40px; gap:0; padding:0 4px; justify-content:space-around; }
.is-event-cards .listing-card-action { position:relative; flex:1 1 0; width:auto; min-width:0; height:40px; margin:0; padding:0; gap:0; }
.is-event-cards .listing-card-action .material-symbols-outlined { font-size:24px; }
.is-event-cards .listing-card-action-count { display:none; }
.is-event-cards .listing-card-action + .listing-card-action::before { content:""; position:absolute; left:0; top:11px; bottom:11px; width:1px; background:var(--event-action-divider); }
@media(min-width:1051px) {
  .is-event-cards .course-card-image { margin:0; width:100%; box-sizing:border-box; padding:0; border:0; border-radius:0; background:#fff5e9; }
  .is-event-cards .course-card-image > img { border-radius:0; }
  .is-event-cards .course-card-image > img.image-fit-contain { background:transparent; }
  .is-event-cards .course-card-image.is-dark-image-bg { background:#142136; }
}
body[data-browse-mode="event"]:not(.is-guide-results) .results-head { padding-block:0; }
.list-date-heading .event-results-toolbar { margin:0 0 0 18px; flex:0 0 auto; }
.list-date-heading:has(.event-results-toolbar:not([hidden])) { align-items:center; }
.list-date-heading:has(.event-results-toolbar:not([hidden])) .list-date-heading-label { flex:1; }
.event-results-switch { display:flex; gap:0; padding:0; border:1px solid #dce3eb; border-radius:10px; background:#fff; overflow:hidden; }
.event-results-switch button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:40px; padding:8px 14px; margin:0; border:0; border-radius:0; background:transparent; color:var(--text-secondary); box-shadow:none; font-size:14px; font-weight:600; }
.event-results-switch button + button { border-left:1px solid #dce3eb; }
.event-results-switch button[aria-pressed="true"] { background:#eef0f3; color:#4b5563; box-shadow:none; }
.event-results-switch button:focus-visible { outline:2px solid #0b75ae; outline-offset:-3px; }
.event-results-switch .material-symbols-outlined { font-size:20px; }
.course-list.is-event-list { grid-template-columns:minmax(0,1fr); gap:0; }
.is-event-list .list-date-heading { margin:20px 0 8px; }
.is-event-list .course-card { display:flex; flex-direction:row; align-items:center; gap:12px; height:auto; min-width:0; padding:16px 10px; border:0; border-bottom:1px solid #e6edf4; border-radius:0; background:var(--surface); box-shadow:none; }
.is-event-list .course-card:hover { background:#fafbfc; }
.is-event-list .event-row-link { display:grid; flex:1; grid-template-columns:96px minmax(180px,2.2fr) minmax(100px,1fr) minmax(130px,1.4fr) minmax(72px,.7fr) minmax(85px,.8fr); align-items:center; gap:16px; min-width:0; }
.is-event-list .event-row-image,.is-event-list .event-group-card > .course-card-image { width:96px; height:68px; flex:0 0 96px; border-radius:9px; }
.is-event-list .course-card-image > img { display:block; }
.is-event-list .course-card-image > img.image-fit-contain { padding:4px; }
.is-event-list .course-title { font-size:16px; font-weight:600; line-height:1.35; overflow-wrap:anywhere; }
.event-group-row-summary { margin-top:5px; font-size:12px; font-weight:400; line-height:1.4; color:var(--text-secondary); }
.is-event-list .event-group-card .event-row-expand { flex:0 0 40px; width:40px; height:40px; min-width:40px; padding:0; margin:0; border-radius:10px; display:flex; align-items:center; justify-content:center; }
.event-row-primary,.event-row-fact { min-width:0; }
.event-row-detail-icon { display:none; }
.event-row-price-icon { display:none; }
.course-list { --listing-detail-icon-color:#61738a; }
.course-list .course-meta-item .material-symbols-outlined,
.course-list .card-footer-line .card-icon-text .material-symbols-outlined { color:var(--listing-detail-icon-color); }
.event-row-fact { font-size:14px; font-weight:400; line-height:1.45; overflow-wrap:anywhere; }
.event-row-label { display:block; margin-bottom:4px; font-size:11px; color:var(--text-secondary); font-weight:600; }
.event-row-category { display:block; margin-top:5px; color:var(--text-secondary); font-size:12px; line-height:1.4; }
.is-event-list .listing-card-actions { flex:0 0 176px; width:176px; min-height:40px; display:flex; gap:0; margin:0; padding:0; border:0; background:transparent; }
.is-event-list .listing-card-action-count { display:none; }
.is-event-list .listing-card-action { flex:0 0 44px; width:44px; min-width:44px; height:40px; padding:0; margin:0; justify-content:center; }
.is-event-list .listing-card-action .material-symbols-outlined { font-size:20px; }
.is-event-list .event-group-card .event-row-expand { margin-left:136px; }
.is-event-list .event-group-card { gap:16px; }
.is-event-list .event-group-card .course-card-body { padding:0; min-width:0; }
.is-event-list .event-group-card .course-card-content { display:grid; grid-template-columns:minmax(180px,2fr) minmax(140px,1fr) minmax(180px,1fr); align-items:center; gap:16px; }
.is-event-list .event-group-card .course-source-line { font-size:12px; white-space:normal; margin-top:5px; }
.is-event-list .event-group-card .course-card-meta { margin:0; font-size:13px; }
.is-event-list .event-group-card .card-footer-line { margin:0; font-size:13px; flex-wrap:wrap; }
.is-event-list .event-group-expanded-controls { margin-top:12px; }
@media(min-width:1051px) {
  .is-event-list .event-group-expanded-controls { margin:0; border:1px solid #dfe8f0; border-top:0; border-radius:0; padding:8px 14px; background:#edf5fa; box-shadow:none; }
  .is-event-list .event-group-expanded-controls strong { font-weight:600; }
  .is-event-list .event-group-expanded-controls > div > span { font-weight:400; }
  .is-event-list .event-group-collapse-button { border:0; border-radius:0; background:transparent; font-weight:600; }
  .is-event-list .event-group-expanded-region .course-card { border-radius:0; }
}
.is-event-list .event-group-loading-card { min-height:0; }
.is-event-list .event-group-loading-card .kido-loading { margin-top:5px; font-size:12px; }
.is-event-list { --event-columns:96px minmax(180px,2.2fr) minmax(100px,1fr) minmax(130px,1.4fr) minmax(72px,.7fr) minmax(85px,.8fr); }
.is-event-list .list-date-heading { color:#103b5b; margin:24px 0 12px; }
@media(min-width:1051px) {
  .course-list:is(.is-event-list,.is-event-cards) > .list-date-heading:has(.event-results-toolbar) { margin-top:-4px; }
}
.is-event-list .course-card { padding:10px 14px; gap:16px; border-left:1px solid #dfE8f0; border-right:1px solid #dfe8f0; }
.is-event-list .event-row-link { grid-template-columns:var(--event-columns); }
.event-table-head { display:grid; grid-template-columns:var(--event-columns) 176px; gap:16px; align-items:center; padding:12px 14px; background:#edf5fa; color:#245779; border:1px solid #edf5fa; border-radius:10px 10px 0 0; font-size:13px; font-weight:700; }
.event-table-head > :first-child { grid-column:1 / 3; }
.event-table-head > :last-child { text-align:center; }
@media(min-width:1051px) {
  .is-event-list .listing-card-action { position:relative; }
  .is-event-list .listing-card-action + .listing-card-action::before { content:""; position:absolute; left:0; top:11px; bottom:11px; width:1px; background:var(--event-action-divider); }
}
.is-event-list .course-card.event-table-last,
.is-event-list .event-table-last .course-card:last-child { border-radius:0 0 10px 10px; }
.is-event-list .event-row-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.is-event-list .event-row-image,.is-event-list .event-group-card > .course-card-image { height:68px; border:1px solid #e7c9a7; padding:5px; background:#fff5e9; border-radius:11px; }
.is-event-list .course-card-image > img { object-fit:cover; border-radius:6px; }
.is-event-list .course-card-image > img.event-image-contain,.is-event-list .course-card-image > img.image-fit-contain { object-fit:contain; padding:0; background:transparent; }
.is-event-list .course-card-image.is-dark-image-bg { background:#142136; }
.event-row-category { display:flex; flex-wrap:wrap; gap:5px; }
.event-category-tag { display:inline; padding:0; border-radius:0; background:transparent; color:#56657c; font-size:12px; }
.event-category-parent { font-weight:600; }
.event-category-parent.is-performance { color:#6332aa; }
.event-category-parent.is-social { color:#a1264d; }
.event-category-parent.is-games { color:#145d9e; }
.event-category-parent.is-science,.event-category-parent.is-nature { color:#226a3c; }
.event-category-parent.is-sports { color:#9a4a04; }
.event-category-parent.is-arts,.event-category-parent.is-reading { color:#794492; }
.event-category-separator { margin-inline:3px; color:#7b8797; }
.event-price-badge { display:inline-block; border-radius:0; padding:0; background:transparent; color:#58677e; }
.event-price-badge.is-free,.event-price-badge.is-paid { color:#176438; }
@media(max-width:1050px) {
  .course-list.is-event-cards { grid-template-columns:minmax(0,1fr); gap:16px; }
  .is-event-cards .list-date-heading { margin:8px 0 0; font-size:17px; line-height:1.3; }
  .is-event-cards .course-card { position:relative; border:1px solid #dfe6ee; border-radius:18px; overflow:hidden; box-shadow:none; }
  .is-event-cards .course-card-image { background:#fff5e9; }
  .is-event-cards .card-category-pill { top:12px; left:12px; max-width:calc(100% - 24px); }
  .is-event-cards .course-card-body { padding:14px 12px 12px; }
  .is-event-cards .course-card-content { gap:9px; }
}
@media(max-width:1050px) {
  .event-table-head { display:none; }
  .is-event-list .list-date-heading + .course-card { border-top:1px solid #dfe8f0; border-radius:10px 10px 0 0; }
  .is-event-list .event-row-label { position:static; width:auto; height:auto; overflow:visible; clip-path:none; white-space:normal; }
  .is-event-list .event-row-link { grid-template-columns:84px minmax(160px,1.8fr) minmax(95px,1fr) minmax(110px,1fr); gap:10px 16px; }
  .is-event-list .event-row-image { width:84px; height:64px; grid-row:1 / 3; }
  .event-row-primary { grid-row:1 / 3; }
  .event-row-time { grid-column:3; grid-row:1; }
  .event-row-location { grid-column:4; grid-row:1; }
  .event-row-age { grid-column:3; grid-row:2; }
  .event-row-price { grid-column:4; grid-row:2; }
  .is-event-list .event-group-card .course-card-content { grid-template-columns:minmax(0,1fr) minmax(150px,1fr); }
  .is-event-list .event-group-card .card-footer-line { grid-column:2; }
}
@media(max-width:1050px) {
  .is-event-list .listing-card-actions { flex-basis:40px; width:40px; flex-direction:column; }
  .is-event-list .listing-card-action { width:40px; }
  .event-results-toolbar { margin-bottom:8px; }
  .is-event-list .course-card { align-items:flex-start; gap:8px; padding:16px 0; }
  .is-event-list .event-row-link { grid-template-columns:76px minmax(0,1fr); gap:10px 12px; }
  .is-event-list .event-row-image { width:76px; height:58px; grid-column:1; grid-row:1; }
  .is-event-list .event-row-primary { grid-column:2; grid-row:1; }
  .is-event-list .event-row-fact { grid-column:2; grid-row:auto; font-size:13px; }
  .is-event-list .event-row-label { display:inline; font-size:12px; margin-right:6px; }
  .is-event-list .course-title { font-size:15px; }
  .is-event-list .event-row-category { font-size:11px; }
  .is-event-list .event-group-card > .course-card-image { width:76px; height:58px; flex-basis:76px; }
  .is-event-list .event-group-card .course-card-content { display:flex; gap:8px; }
  .is-event-list .event-group-card .event-group-expand-button { margin-left:0; }
}
/* One compact card presentation on phones, independent of desktop preference. */
@media(max-width:1050px) {
  .course-list.is-event-list { gap:12px; }
  .is-event-list .list-date-heading { font-size:17px; margin:12px 0 0; line-height:1.35; }
  .is-event-list .course-card,
  .is-event-list .course-card.event-table-last,
  .is-event-list .event-table-last .course-card:last-child { display:flex; flex-direction:column; align-items:stretch; gap:0; padding:0; border:1px solid #dfe8f0; border-radius:16px; overflow:hidden; }
  .is-event-list .event-row-link { flex:auto; padding:12px; grid-template-columns:128px minmax(0,1fr) minmax(0,1fr); gap:7px 12px; align-items:start; }
  .is-event-list .event-row-image { width:128px; height:132px; min-height:132px; max-height:132px; align-self:start; grid-row:1 / 5; padding:4px; }
  .is-event-list .event-row-primary { grid-column:2 / -1; grid-row:1; }
  .is-event-list .event-row-time,.is-event-list .event-row-location { grid-column:2 / -1; }
  .is-event-list .course-title { font-size:16px; line-height:1.3; font-weight:600; }
  .is-event-list .event-category-tag { padding:0; font-size:12px; }
  .is-event-list .event-row-fact { font-size:13px; line-height:1.35; }
  .is-event-list .event-row-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .is-event-list .event-row-detail-icon { display:inline-block; position:absolute; left:0; top:0; font-size:18px; color:var(--listing-detail-icon-color); }
  .is-event-list .event-row-time,.is-event-list .event-row-location,.is-event-list .event-row-age { position:relative; padding-left:24px; }
  .is-event-list .event-row-age { grid-column:2; grid-row:4; max-width:100%; align-self:end; }
  .is-event-list .event-row-price { grid-column:3; grid-row:4; justify-self:end; max-width:100%; text-align:right; align-self:end; }
  .is-event-list .event-row-price .event-row-label { display:none; }
  .is-event-list .event-row-price { display:flex; align-items:flex-start; gap:5px; }
  .is-event-list .event-row-price-icon { display:inline-block; flex:0 0 auto; font-size:18px; color:var(--listing-detail-icon-color); }
  .is-event-list .event-price-badge { padding:0; border-radius:0; background:transparent; }
  .is-event-list .event-price-badge.is-free,.is-event-list .event-price-badge.is-paid { color:#176438; }
  .is-event-list .listing-card-actions { flex:0 0 auto; width:100%; min-height:40px; flex-direction:row; justify-content:space-around; border-top:1px solid #edf1f5; padding:0 4px; }
  .is-event-list .listing-card-action,
  .is-event-list .listing-card-action[data-card-action="comment"] { position:relative; display:inline-flex; flex:1 1 0; width:auto; min-width:0; height:40px; gap:0; font-size:11px; font-weight:400; }
  .is-event-list .listing-card-action .material-symbols-outlined { font-size:24px; }
  .is-event-list .listing-card-action + .listing-card-action::before { content:""; position:absolute; left:0; top:11px; bottom:11px; width:1px; background:var(--event-action-divider); }
  .is-event-list .event-group-card .event-row-expand { align-self:flex-end; margin:0 12px 10px; }
}
