.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s6)}.event-dialog{width:min(720px,calc(100% - 32px));max-height:85dvh;margin:auto;border:1px solid var(--line);padding:var(--s8);background:var(--white);color:var(--ink);overflow-y:auto}.event-dialog::backdrop{background:rgba(0,30,55,.65)}.event-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--s4);margin-bottom:var(--s6)}.event-dialog h2{font-size:var(--text-card)}.event-dialog-item{border-top:1px solid var(--line);padding-top:var(--s5)}.event-dialog-item h3{font-size:var(--text-body);margin-block:var(--s3)}.event-dialog-item p{display:flex;align-items:center;gap:var(--s2);color:var(--muted);font-size:var(--text-small)}.event-dialog-item .prose-text{margin-top:var(--s5)}.calendar-toolbar h2{font-size:var(--text-section)}.calendar-toolbar h2 strong{color:var(--blue)}.calendar-toolbar>div{display:flex;gap:var(--s2)}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:2px solid var(--deep);border-left:1px solid var(--line)}.calendar-blank,.calendar-day,.calendar-weekday{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar-weekday{background:var(--paper);text-align:center;padding:var(--s3);font-weight:700;font-size:var(--text-small)}.calendar-day:nth-child(7n+1),.calendar-weekday:first-child{color:var(--danger)}.calendar-day{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s3);padding:var(--s3);min-height:100px;min-width:0;background:var(--white);font-size:var(--text-body);cursor:pointer}.calendar-day:hover{background:var(--soft-blue)}.calendar-day[aria-pressed=true]{background:var(--soft-blue);box-shadow:inset 0 0 0 2px var(--blue)}.calendar-day[data-today=true]>span:first-child{background:var(--blue);color:var(--white);border-radius:50%;width:28px;height:28px;display:grid;place-items:center}.calendar-blank{background:var(--paper)}.calendar-count{display:flex;align-items:center;gap:var(--s1);font-size:var(--text-label);color:var(--blue);font-weight:700}.calendar-count i{width:5px;height:5px;background:var(--blue);border-radius:50%}.event-list-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-block:var(--s10) var(--s5)}.event-list-heading h2{font-size:var(--text-card)}.event-list{display:grid;gap:var(--s4)}.event-card{display:grid;grid-template-columns:84px minmax(0,1fr);gap:var(--s6);border:1px solid var(--line);padding:var(--s6)}.event-date{background:var(--soft-blue);color:var(--blue);text-align:center;padding:var(--s3);align-self:start}.event-date span{font-size:var(--text-small)}.event-date strong{display:block;font-size:var(--text-page);line-height:1.25}.event-card h3{font-size:var(--text-card);margin-block:var(--s2) var(--s4)}.event-card p{display:flex;align-items:center;gap:var(--s2);color:var(--muted);font-size:var(--text-small);margin-block:var(--s2)}.event-card .prose-text{margin-top:var(--s4)}.event-card .more-link{margin-top:var(--s4);color:var(--blue)}@media (max-width:640px){.calendar-toolbar{flex-wrap:wrap}.calendar-toolbar h2{font-size:var(--text-card)}.calendar-day{padding:var(--s2);min-height:70px;font-size:var(--text-small)}.calendar-count-label{display:none}.calendar-weekday{padding:var(--s3) 0}.event-card{grid-template-columns:60px minmax(0,1fr);padding:var(--s4);gap:var(--s4)}.event-date{padding:var(--s2)}.event-date strong{font-size:var(--text-section)}.event-list-heading .button{padding-inline:var(--s2)}}