.calendar-toolbar{display:flex;margin-bottom:1rem;padding:.8rem 1rem;align-items:center;justify-content:space-between;gap:1rem}.calendar-toolbar label{display:flex;align-items:center;gap:.55rem;color:var(--muted);font-size:.72rem;font-weight:750}.calendar-toolbar select{min-width:220px}.calendar-nav{display:flex;align-items:center;gap:.65rem}.calendar-nav strong{margin-left:.35rem}.icon-button{display:grid;width:2.5rem;height:2.5rem;padding:0;place-items:center;border:1px solid var(--line);border-radius:.65rem;background:#fff;color:var(--green);cursor:pointer}.calendar-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem;align-items:start}.unscheduled-panel{padding:1.2rem}.unscheduled-panel .section-heading{align-items:center}.unscheduled-panel h2{margin:.2rem 0}.unscheduled-panel>p{margin:.35rem 0 1rem;color:var(--muted);font-size:.75rem}.count-badge{display:grid;min-width:2rem;height:2rem;padding:0 .45rem;place-items:center;border-radius:999px;background:var(--green-pale);color:var(--green);font-weight:850}.unscheduled-list{display:grid;gap:.55rem}.unscheduled-list>button{display:grid;grid-template-columns:auto 1fr auto;width:100%;padding:.8rem;align-items:center;gap:.65rem;border:1px solid var(--line);border-radius:.7rem;background:#fbfdfc;color:var(--ink);text-align:left;cursor:pointer}.unscheduled-list>button:hover{border-color:#8ebfac;background:var(--green-pale)}.unscheduled-list>button>i:first-child{color:var(--green);font-size:1.35rem}.unscheduled-list span{display:grid;min-width:0}.unscheduled-list strong{font-size:.76rem}.unscheduled-list small{color:var(--muted);font-size:.65rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-calendar{overflow:hidden}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));min-height:570px}.calendar-day{min-width:0;border-right:1px solid var(--line)}.calendar-day:last-child{border-right:0}.calendar-day>header{display:flex;padding:.8rem;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#f8faf9}.calendar-day>header span{color:var(--muted);font-size:.68rem;font-weight:750;text-transform:uppercase}.calendar-day>header strong{display:grid;width:1.8rem;height:1.8rem;place-items:center;border-radius:999px}.calendar-day.today>header strong{background:var(--green);color:#fff}.day-events{display:grid;padding:.5rem;align-content:start;gap:.5rem}.calendar-event{display:grid;width:100%;padding:.65rem;gap:.25rem;border:0;border-left:4px solid var(--team-color);border-radius:.55rem;background:#f4f8f6;color:var(--ink);text-align:left;cursor:pointer}.calendar-event:hover{background:#e8f2ed}.calendar-event strong{font-size:.72rem;line-height:1.3}.calendar-event small{color:var(--muted);font-size:.61rem}.event-time{color:var(--team-color);font-size:.62rem;font-weight:850}.day-empty{padding:1rem 0;color:#9aaba4;font-size:.65rem;text-align:center}.calendar-loading{display:flex;padding:3rem;align-items:center;justify-content:center;gap:.7rem;color:var(--muted)}.calendar-loading i{color:var(--green);font-size:2rem}.calendar-editor-backdrop{position:fixed;z-index:1100;inset:0;display:grid;padding:1rem;place-items:center;background:rgba(8,34,26,.48)}.calendar-editor{width:min(620px,100%);max-height:calc(100vh - 2rem);padding:1.5rem;overflow:auto}.calendar-editor>header{display:flex;margin-bottom:1.25rem;align-items:flex-start;justify-content:space-between;gap:1rem}.calendar-editor h2{margin:.25rem 0}.calendar-editor header p{margin:0;color:var(--muted);font-size:.75rem}.calendar-editor .form-actions{margin-top:1.25rem;justify-content:flex-end}.schedule-note{display:flex;margin-top:1rem;padding:.75rem;align-items:center;gap:.5rem;border-radius:.6rem;background:#eef6f2;color:var(--muted);font-size:.7rem}.schedule-note i{color:var(--green);font-size:1rem}@media(max-width:1050px){.calendar-layout{grid-template-columns:1fr}.unscheduled-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.week-calendar{overflow-x:auto}.week-grid{min-width:900px}}@media(max-width:650px){.calendar-toolbar,.calendar-toolbar label{align-items:stretch;flex-direction:column}.calendar-toolbar select{min-width:0}.calendar-nav{flex-wrap:wrap}.calendar-nav strong{width:100%;margin:0}.calendar-editor{padding:1.1rem}}
