.calendar-controls{display:grid;gap:1rem}.calendar-nav,.calendar-view-switch,.calendar-filters,.calendar-create-fields{display:flex;gap:.75rem;align-items:end;flex-wrap:wrap}.calendar-nav strong{font-size:1.2rem;margin-left:auto}.calendar-filters fieldset{display:flex;gap:.75rem;flex-wrap:wrap;border:0;padding:0;margin:0}.calendar-filters fieldset label{display:flex;gap:.3rem;align-items:center}.calendar-month,.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid #dbe1e8}.calendar-day{min-height:8rem;padding:.45rem;border-right:1px solid #e5e9ee;border-bottom:1px solid #e5e9ee;overflow:hidden}.calendar-day.outside{background:#f6f7f9;color:#6b7280}.calendar-week .calendar-day{min-height:22rem}.calendar-weekday{padding:.5rem;text-align:center;font-weight:700;background:#f3f5f7}.calendar-event{display:block;color:#fff;border-left:.35rem solid rgba(0,0,0,.25);border-radius:.35rem;padding:.3rem .4rem;margin:.25rem 0;text-decoration:none;font-size:.78rem;overflow-wrap:anywhere}.calendar-event.historical{color:#27313a;background:repeating-linear-gradient(135deg,#eef1f4,#eef1f4 6px,#dce2e8 6px,#dce2e8 12px);border:1px dashed #52606d}.calendar-event small{display:block}.calendar-agenda{display:grid;gap:.6rem}.calendar-agenda .calendar-event{font-size:.95rem}.calendar-create-fields label{flex:1;min-width:12rem}.calendar-create-fields input,.calendar-create-fields select{width:100%}@media(max-width:760px){.calendar-month,.calendar-week{display:block}.calendar-weekday{display:none}.calendar-day{min-height:auto;border-right:0}.calendar-day:empty{display:none}.calendar-nav strong{width:100%;order:-1}.calendar-event{font-size:.9rem}}
