.month-page-heading{margin-bottom:20px}.month-service-form{margin-bottom:22px}.month-filter-top{display:flex;align-items:center;gap:24px}.month-filter-top .compact{width:260px}.all-services{color:#18296f;font-size:.875rem;font-weight:650;align-self:flex-end;padding:12px 0}.month-team-count{margin-left:auto;color:var(--muted);font-size:.8rem;align-self:flex-end;padding-bottom:12px}.service-colors{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;border:0;padding:14px 0 0;margin:0}.service-colors legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.service-chip{display:flex;align-items:center;gap:9px;padding:8px 10px 8px 7px;border:1px solid transparent;border-radius:6px;cursor:pointer;font-size:.875rem;line-height:1.35;position:relative}.service-chip:hover{background:#fff}.service-chip.selected{background:#fff;border-color:#8a9bbb;box-shadow:0 1px 3px #1824480b}.service-chip input{position:absolute;width:1px;height:1px;opacity:0}.service-chip:has(input:focus-visible){outline:3px solid #85a8ff;outline-offset:2px}.service-swatch{width:19px;height:32px;border:1px solid #24345155;background:var(--service-color);flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#18243b}.service-chip input:checked+.service-swatch:after{content:'✓';font-size:14px;font-weight:700}.service-chip small{display:block;font-size:.75rem;color:#65718a;margin-top:2px}.service-colors .btn{margin-left:auto;min-height:36px;padding:7px 13px}.month-calendar-panel{padding:0 22px;border-radius:8px}.month-view-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:22px 0}.month-view-toolbar>.btn{justify-self:start;min-height:35px;padding:7px 12px;font-size:.875rem;background:#f4f5fa}.month-view-toolbar h2{font-size:1.55rem;font-weight:650;letter-spacing:-.02em;text-align:center;margin:0;color:#263451}.month-view-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px}.month-arrows{display:flex;border-radius:4px;overflow:hidden;background:#101963;flex-shrink:0}.month-arrows a{display:flex;align-items:center;justify-content:center;width:36px;height:35px;color:white;font-size:1.7rem;line-height:1;border-right:1px solid #ffffff33}.month-arrows a:last-child{border:0}.month-arrows a:hover{background:#263898}.month-scroll{overflow-x:auto}.month-sheet{min-width:620px;border-left:1px solid #dce1e8;border-top:1px solid #dce1e8}.month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:#fafbfd}.month-weekdays span{padding:9px 0;text-align:center;font-size:.875rem;font-weight:650;border-right:1px solid #dce1e8;border-bottom:1px solid #dce1e8;color:#293750}.month-week{position:relative;min-height:var(--week-height);border-bottom:1px solid #dce1e8}.month-date-cells{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));position:absolute;inset:0}.month-date-cell{position:relative;border-right:1px solid #dce1e8;background:#fff;min-width:0}.month-date-cell.month-weekend{background:#fafbfd}.month-date-cell.outside-month{background:#f6f7fa}.month-date-cell.month-today{background:#fff9de}.month-date-cell time{display:block;text-align:right;font-size:.875rem;color:#223474;padding:7px 9px;line-height:1.3}.month-date-cell.outside-month time{color:#8e9abc}.month-date-cell.month-today time{font-weight:750;color:#11265c}.month-day-link{display:block;height:100%;position:relative}.month-day-link:hover{box-shadow:inset 0 0 0 2px #a0b5e3;background:#d9e4ff25}.day-add{display:none;position:absolute;bottom:8px;right:10px;color:#657fae;font-size:1.2rem}.month-day-link:hover .day-add,.month-day-link:focus-visible .day-add{display:block}.month-events{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:26px;gap:3px 0;padding-top:35px;padding-bottom:7px;pointer-events:none}.month-event{pointer-events:auto;display:flex;align-items:center;justify-content:center;background:var(--service-color);color:#182638;font-size:.875rem;line-height:1.4;min-width:0;overflow:hidden;margin:0 2px;padding:2px 7px;border-radius:3px;border:1px solid #0000000d}.month-event>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-event.pending{background:repeating-linear-gradient(135deg,transparent,transparent 6px,#ffffff66 6px,#ffffff66 10px),var(--service-color);border:1px dashed #536275}.month-event.continues-before{margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.month-event.continues-after{margin-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.month-event[href]:hover{filter:brightness(.95);box-shadow:0 1px 4px #1b284733;z-index:2}.month-bottom{display:flex;justify-content:space-between;gap:16px;padding:16px 0;color:#65718a;font-size:.8rem;line-height:1.5}.month-bottom>span:first-child{display:flex;align-items:center;gap:8px;flex-shrink:0}.pending-key{display:inline-block;width:18px;height:13px;background:repeating-linear-gradient(135deg,#eef1f7,#eef1f7 3px,#ccd4e3 3px,#ccd4e3 5px);border:1px dashed #7e8caa;border-radius:2px}@media(max-width:1250px){.month-view-actions .month-input{display:none}.month-calendar-panel{padding:0 16px}.month-team-count{display:none}}@media(max-width:760px){.month-page-heading h1{font-size:1.55rem}.month-filter-top{gap:12px;flex-wrap:wrap}.month-filter-top .compact{flex:1;min-width:185px}.all-services{font-size:.8rem}.service-colors{gap:5px}.service-chip{font-size:.8rem;padding:7px;gap:7px}.service-chip small{font-size:.7rem}.service-swatch{width:16px;height:27px}.service-colors .btn{margin-left:0}.month-calendar-panel{padding:0 10px}.month-view-toolbar{gap:8px;padding:17px 0;grid-template-columns:auto 1fr auto}.month-view-toolbar h2{font-size:1.05rem}.month-view-toolbar>.btn{font-size:.75rem;padding:7px}.month-arrows a{width:28px;height:33px}.month-bottom{flex-direction:column;gap:8px;font-size:.75rem}.month-sheet{min-width:620px}.month-event{font-size:.8rem}}

.heading-actions{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:760px){.sidebar nav{flex-wrap:wrap}.sidebar .nav-link{flex:1 1 40%}.heading-actions .btn{max-width:none}}

.sidebar{overflow-y:auto}@media(max-height:820px){.sidebar-note{display:none}.profile{margin-top:auto}}

.month-date-cell.month-weekend,.month-date-cell.month-holiday{background:#fff0f0}.month-weekend time,.month-holiday time,.month-weekdays span:nth-child(n+6){color:#b42332}.holiday-name{display:block;color:#a11d2b;font-size:10px;line-height:12px;padding:0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-events{padding-top:51px}
