.agenda-container { max-width: 84rem; padding-block: var(--space-7); }
.agenda-container h1 { margin-bottom: var(--space-4); }
.agenda-intro { font-size: var(--font-size-lg); margin-bottom: var(--space-6); }
.agenda-calendar { border: 2px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface); padding: clamp(1rem, 3vw, 2rem); }
.agenda-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
.agenda-month-form { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.agenda-month-form select { min-height: 2.75rem; border: 2px solid; border-radius: var(--radius-pill); padding: .6rem 1rem; background: white; color: var(--color-text); font: inherit; }
.agenda-toolbar [aria-disabled="true"] { opacity: .5; pointer-events: none; }
.agenda-calendar h2 { font-size: clamp(1.75rem, 4vw, 2.75rem); margin-block: 1.5rem .75rem; }
.agenda-status { min-height: 1.6em; }
.agenda-grid-wrap { position: relative; overflow-x: auto; margin-block: 1rem; border: 1px solid var(--color-border); border-radius: var(--radius-sm); }
.agenda-grid { width: 100%; table-layout: fixed; border-collapse: collapse; margin: 0; }
.agenda-grid th { background: var(--color-secondary); color: white; padding: .75rem; }
.agenda-grid abbr { text-decoration: none; }
.agenda-grid td { border: 1px solid #b7b2af; vertical-align: top; height: 7.5rem; padding: .4rem; }
.agenda-day__number { display: inline-grid; place-items: center; width: 1.75rem; height: 1.75rem; font-weight: bold; margin-bottom: .25rem; }
.agenda-day.is-today .agenda-day__number { background: var(--ddna-orange); border: 2px solid; border-radius: 50%; }
.agenda-day.is-past { background: #f4f2f0; }
.agenda-day--empty { background: #ebe8e5; }
.agenda-event { display: flex; flex-direction: column; gap: .2rem; background: #fff0dc; border-left: 3px solid var(--ddna-orange); border-radius: .4rem; padding: .45rem; margin-bottom: .4rem; text-decoration: none; color: var(--color-text); font-size: .9rem; overflow-wrap: anywhere; line-height: 1.35; }
.agenda-event:hover { background: var(--ddna-orange); color: var(--color-text); }
.agenda-event time { font-weight: bold; }
.agenda-detail { border: 2px solid; border-radius: var(--radius-sm); padding: 1rem; margin-bottom: 1rem; scroll-margin-top: 6rem; }
.agenda-detail summary { cursor: pointer; font-weight: bold; min-height: 2.75rem; padding: .5rem; }
.agenda-detail[open] summary { border-bottom: 1px solid; margin-bottom: 1rem; }
.agenda-detail dl { display: grid; grid-template-columns: auto 1fr; gap: .5rem 1rem; }
.agenda-detail dt { font-weight: bold; }
.agenda-detail dd { margin: 0; overflow-wrap: anywhere; }
.agenda-description { overflow-wrap: anywhere; }
.agenda-description img { max-width: 100%; height: auto; }
.agenda-timezone { color: var(--color-muted); font-size: .9rem; }
@media (max-width: 47.9375rem) {
 .agenda-toolbar > a { flex: 1; padding: .65rem .6rem; }
 .agenda-month-form { width: 100%; order: -1; }
 .agenda-calendar { padding: .75rem; }
 .agenda-grid { min-width: 42rem; }
 .agenda-grid-wrap::before { content: 'Deslizá para ver todos los días. También podés usar la lista de actividades debajo.'; display: block; padding: .75rem; font-size: .9rem; }
 .agenda-details h3 { font-size: 1.5rem; }
}
