/* Agenda SSR: filas cronológicas, filtros y detalle, sin calendario JavaScript. */
.agenda-manage { margin-top: 24px; }
.agenda-filters { align-items: end; }
.agenda-list { border-top: 1px solid var(--line); }
.agenda-entry { display: flex; align-items: center; gap: 30px; padding: 30px 0; border-bottom: 1px solid var(--line); }
.agenda-date { min-width: 90px; text-align: center; padding: 15px 12px; background: var(--ochre); }
.agenda-date span, .agenda-date small { display: block; font-size: 10px; letter-spacing: 1px; }
.agenda-date strong { display: block; font-size: 43px; line-height: 1.15; font-weight: 500; }
.agenda-entry-copy { flex: 1; min-width: 0; }
.agenda-tags { display: flex; flex-wrap: wrap; gap: 12px; font-size: 10px; text-transform: uppercase; letter-spacing: 1px; color: var(--rust); }
.agenda-entry h2 { font-size: 29px; margin: 10px 0 14px; overflow-wrap: anywhere; }
.agenda-entry h2 a:hover { color: var(--rust); }
.agenda-entry p { font-size: 13px; color: var(--muted); overflow-wrap: anywhere; }
.agenda-entry > .text-link { flex-shrink: 0; }
.agenda-hours { display: block; }
.agenda-cancelled { padding: 2px 7px; background: #f4ddd5; }
.agenda-empty { padding: 45px 0; }
.agenda-empty h2 { font-size: 34px; }
.agenda-empty p:not(.eyebrow) { color: var(--muted); margin: 20px 0; }
.agenda-detail { display: grid; grid-template-columns: 1.5fr 1fr; gap: 70px; }
.agenda-detail h1 { font-size: 52px; overflow-wrap: anywhere; }
.agenda-detail .article-body { font-size: 16px; line-height: 1.85; color: var(--muted); }
.agenda-cancellation { margin-top: 25px; padding: 16px 20px; background: #f4ddd5; color: #8b3524; }
.agenda-info { padding: 30px; background: var(--soft); align-self: start; }
.agenda-info h2 { font-size: 27px; margin-bottom: 28px; }
.agenda-info h3 { font-size: 11px; letter-spacing: 1px; text-transform: uppercase; margin: 24px 0 10px; }
.agenda-info p { font-size: 14px; overflow-wrap: anywhere; }
.agenda-info .text-link { margin-top: 25px; }
@media (max-width: 900px) {
    .agenda-entry { gap: 20px; flex-wrap: wrap; }
    .agenda-entry > .text-link { margin-left: 110px; }
    .agenda-detail { gap: 30px; }
    .agenda-detail h1 { font-size: 42px; }
}
@media (max-width: 640px) {
    .agenda-filters .button { margin-top: 10px; }
    .agenda-date { min-width: 66px; padding: 12px 8px; }
    .agenda-date strong { font-size: 34px; }
    .agenda-entry { gap: 16px; align-items: start; }
    .agenda-entry h2 { font-size: 24px; }
    .agenda-entry > .text-link { margin-left: 82px; }
    .agenda-detail { grid-template-columns: 1fr; }
    .agenda-detail h1 { font-size: 37px; }
}
