/* Calendar colours follow the OA editorial categories. Labels never rely on colour alone. */
[data-agenda-calendar]{--calendar-color:#620c19;--calendar-ink:#620c19;--calendar-tint:#f7ebee}
[data-agenda-calendar="bastonario"]{--calendar-color:#b38938;--calendar-ink:#785517;--calendar-tint:#faf3e4}
[data-agenda-calendar="formacao"]{--calendar-color:#4169e1;--calendar-ink:#294bb6;--calendar-tint:#edf1ff}
[data-agenda-calendar="externas"]{--calendar-color:#28784a;--calendar-ink:#21623d;--calendar-tint:#eaf5ee}
[data-agenda-calendar="regionais"]{--calendar-color:#ae6174;--calendar-ink:#874357;--calendar-tint:#faedf1}
.agenda-calendars{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:26px}
.agenda-calendars button{display:inline-flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid #d9cbb9;border-radius:5px;font-size:14px;text-align:left;color:#403730;background:#fff9;min-height:44px}
.agenda-calendars button[aria-pressed="true"]{background:var(--calendar-tint);color:var(--calendar-ink);border-color:var(--calendar-color);box-shadow:inset 0 -2px var(--calendar-color)}
.calendar-swatch{width:10px;height:10px;border-radius:50%;background:var(--calendar-color);flex:none}
.portal-v2 .agenda-event .event-date{color:var(--calendar-ink);background:var(--calendar-tint);border-color:var(--calendar-color);border-top-width:3px}
.portal-v2 .agenda-event .event-type{color:var(--calendar-ink);font-size:13px;letter-spacing:.035em}
.portal-v2 .agenda-event h3{color:#302925}
.portal-v2 .agenda-event:hover h3{color:var(--calendar-ink)}
.portal-v2 .agenda-event .event-arrow{color:var(--calendar-ink)}
.portal-v2 .calendar-days button{padding:5px 0 10px;min-height:42px}
.portal-v2 .calendar-days button.has-event{background:#f3eee7;color:#302925}
.portal-v2 .calendar-days button.has-event:after{display:none}
.portal-v2 .calendar-days button.selected{color:white;background:#620c19}
.portal-v2 .calendar-days button[aria-current="date"]{outline:1px solid #bba991;outline-offset:-1px}
.calendar-dots{position:absolute;display:flex;gap:2px;bottom:5px;left:0;right:0;justify-content:center}
.calendar-dots i{display:block;background:var(--calendar-color);width:4px;height:4px;border-radius:50%}
.calendar-days .selected .calendar-dots i{box-shadow:0 0 0 1px #fff9}
.month-jump{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;margin:0 0 20px}
.month-jump input{font:inherit;min-width:0;width:155px;max-width:70%;background:#fff9;border:1px solid #d9cbb9;border-radius:4px;padding:8px;color:#403730}
.portal-v2 .calendar-key{justify-content:space-between}
.portal-v2 .calendar-key>button{margin:0;font-size:13px;min-height:32px}
.calendar-badge{display:inline-flex;align-items:center;gap:8px;background:var(--calendar-tint);color:var(--calendar-ink);border-left:3px solid var(--calendar-color);padding:6px 12px;font-size:14px}
.subscription-calendars{border:0;padding:0;margin:22px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.subscription-calendars legend{font-size:16px;margin-bottom:12px}
.subscription-calendars label{display:flex;align-items:center;gap:10px;border:1px solid #d9cbb9;border-radius:5px;padding:12px;font-size:14px;cursor:pointer}
.subscription-calendars label:has(input:checked){background:var(--calendar-tint);border-color:var(--calendar-color);color:var(--calendar-ink)}
.subscription-calendars input{accent-color:var(--calendar-color);flex:none}
.subscription-calendars label:first-of-type{grid-column:1/-1}
.agenda-calendars button:focus-visible,.month-jump input:focus-visible,.subscription-calendars input:focus-visible{outline:2px solid #620c19;outline-offset:3px}
@media(max-width:760px){.agenda-calendars{gap:8px}.agenda-calendars button{padding:9px 11px;font-size:13px}.agenda-calendars button:last-child{flex-basis:100%}.subscription-calendars{grid-template-columns:1fr}.portal-v2 .agenda-event .event-type{font-size:12px}.portal-v2 .agenda-filter-row{flex-wrap:wrap}.portal-v2 .agenda-filter-row select{max-width:100%}}

.agenda-more{margin-top:22px;font-size:14px}.agenda-more[hidden]{display:none}

.agenda-tools{display:grid;grid-template-columns:minmax(260px,1.3fr) minmax(220px,1fr);gap:20px;margin-bottom:26px;max-width:760px}
.agenda-filter{display:flex;flex-direction:column;gap:8px;min-width:0;font:500 14px/1.5 var(--sans);color:#403730}
.agenda-filter>span{display:flex;align-items:center;gap:8px}
.agenda-filter select,.subscription-choice select{display:block;box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:48px;padding:11px 36px 11px 13px;border:1px solid #cdbda8;border-radius:5px;background-color:#fffdfa;color:#302925;font:400 15px/1.5 var(--sans);cursor:pointer}
.agenda-filter[data-agenda-calendar] select{border-left:4px solid var(--calendar-color)}
.agenda-filter select:focus-visible,.subscription-choice select:focus-visible{outline:2px solid #620c19;outline-offset:3px}
.subscription-choice{display:flex;flex-direction:column;gap:10px;margin:24px 0 14px;font:500 16px/1.5 var(--sans)}
#subscription-selected{margin-bottom:10px}
@media(max-width:760px){.agenda-tools{grid-template-columns:minmax(0,1fr);gap:16px}.agenda-filter select,.subscription-choice select{font-size:16px}}
