.agenda-page { padding-top: 36px; padding-bottom: 64px; min-height: 55vh; }
.agenda-intro { color: #59666d; margin: 16px 0 30px; }
.agenda-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 30px; }
.agenda-toolbar[hidden] { display: none; }
.agenda-toolbar button, .agenda-toolbar select, #agenda-retry { border: 1px solid #cbd1d5; padding: 10px 16px; background: white; color: #235779; border-radius: 2px; }
.agenda-toolbar label { margin-left: 12px; }
.agenda-month-title { display: flex; align-items: center; gap: 22px; font-size: 1.45rem; font-weight: 700; margin: 32px 0 20px; color: #142a35; }
.agenda-month-title::after { content: ''; flex: 1; height: 1px; background: #dfe3e6; }
.agenda-list { list-style: none; padding: 0; margin: 0; }
.agenda-event { display: flex; align-items: flex-start; gap: 36px; padding: 32px 28px; margin-bottom: 24px; border: 1px solid #dfe3e6; border-left: 5px solid #9ac31c; background: white; box-shadow: 0 5px 24px #142a3505; }
.agenda-date { display: flex; flex-direction: column; align-items: center; min-width: 64px; padding: 10px 12px; background: #f0f2f3; color: #657780; }
.agenda-weekday { font-size: .75rem; font-weight: 700; text-transform: uppercase; }
.agenda-day { font-size: 1.65rem; font-weight: 700; }
.agenda-details { min-width: 0; }
.agenda-details h3 { font-size: 1.3rem; line-height: 1.45; margin: 10px 0 14px; font-weight: 700; overflow-wrap: anywhere; }
.agenda-details a { color: #102b38; text-decoration: none; }
.agenda-details a:hover { color: #007da7; text-decoration: underline; }
.agenda-details p { color: #62717a; margin: 6px 0 0; }
.agenda-page :focus-visible { outline: 3px solid #007da7; outline-offset: 4px; }
@media (max-width: 575px) {
    .agenda-event { gap: 18px; padding: 20px 14px; }
    .agenda-details h3 { font-size: 1.05rem; margin-top: 0; }
    .agenda-date { min-width: 52px; padding: 8px; }
    .agenda-toolbar label { margin-left: 0; }
    .agenda-toolbar select { max-width: 100%; }
}
