/* Staff calendar */
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:26px 0 16px}.calendar-toolbar h2{margin:0;font-size:23px}.cal-navigation,.cal-controls,.cal-view-switch{display:flex;align-items:center;gap:8px}.cal-view-switch{padding:3px;border:1px solid #d9dadd;border-radius:6px;background:#fff}.cal-view-switch button{border:0;background:transparent;padding:7px 14px;border-radius:3px;color:#666;cursor:pointer}.cal-view-switch button[aria-pressed=true]{background:#202225;color:white}.cal-navigation .btn{padding:7px 12px}.cal-legend{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#707378;margin:16px 0}.cal-legend span{display:flex;align-items:center;gap:7px}.cal-legend i{width:8px;height:8px;border-radius:50%;background:#d89b28}.cal-legend .confirmed{background:#398060}.cal-legend .blocked{background:#85898f}.cal-legend .completed{background:#5485b4}.calendar-shell{background:#fff;border:1px solid #dfe1e2;border-radius:7px;overflow:hidden}.cal-timeline{display:grid;grid-template-columns:58px repeat(var(--cal-days),minmax(0,1fr));background:#fff;position:relative}.cal-head-gutter,.cal-day-heading{height:96px;border:0;border-bottom:1px solid #dfe1e2;border-right:1px solid #eceeef;background:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0;color:#65696d;font-size:12px;cursor:pointer}.cal-head-gutter{cursor:default}.cal-day-heading strong{font-size:23px;font-weight:500;color:#202225;line-height:1.5}.cal-day-heading small{font-size:10px;color:#999}.cal-day-heading.is-today strong{background:#bd2035;color:#fff;border-radius:50%;width:36px;text-align:center}.cal-clock{height:672px;position:relative;border-right:1px solid #e5e7e9;font-size:11px;color:#8b8f93;background:#fafafa}.cal-clock span{position:absolute;left:9px;transform:translateY(-50%)}.cal-clock span:first-child{transform:translateY(4px)}.cal-clock span:last-child{transform:translateY(-100%)}.cal-time-column{height:672px;position:relative;min-width:0;border-right:1px solid #e9ebed;background:repeating-linear-gradient(to bottom,transparent 0,transparent 41px,#eceeef 41px,#eceeef 42px)}.cal-slot-buttons{display:flex;flex-direction:column;position:absolute;inset:0}.cal-slot-buttons button{height:42px;flex:none;cursor:pointer;border:0;background:transparent;width:100%;text-align:left}.cal-slot-buttons button:hover{background:#faf4f5}.cal-free{font-size:11px;color:#a5a8ab;position:absolute;top:25px;left:0;right:0;text-align:center;pointer-events:none}.cal-event{position:absolute;z-index:1;border:0;border-left:3px solid #ba8528;border-radius:4px;background:#fff0ce;color:#6e4c11;text-align:left;padding:7px;cursor:pointer;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;font-size:12px;gap:2px;line-height:1.35;min-width:0}.cal-event-time{font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums}.cal-event strong{font-size:13px;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-event-service,.cal-event-status{font-size:10px}.cal-event.confirmed{background:#e4f2e9;color:#245d40;border-color:#398060}.cal-event.completed{background:#e9f1fa;color:#315a85;border-color:#5485b4}.cal-event.blocked{background:#eeeff1;color:#5a6067;border-color:#85898f}.cal-event.cancelled,.cal-event.declined{background:#f5f5f5;color:#95989d;border-color:#d5d5d5;text-decoration:line-through}.cal-event:hover{filter:brightness(.96)}.cal-month-weekdays,.cal-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-month-weekdays span{padding:14px;text-align:center;font-size:12px;color:#888;border-bottom:1px solid #e1e3e5}.cal-month-cell{min-height:142px;border-right:1px solid #e5e7e9;border-bottom:1px solid #e5e7e9;min-width:0;padding:6px}.cal-month-cell.other-month{background:#fafafa;color:#b6b8bb}.cal-month-cell.is-selected{background:#fff7f8;box-shadow:inset 0 0 0 1px #bd2035}.cal-month-day{display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;width:100%;padding:4px 7px;cursor:pointer;color:inherit;font-size:12px}.cal-month-day strong{font-size:14px;font-weight:500}.cal-month-day.is-today strong{color:#bd2035;font-weight:700}.month-count{font-size:10px;color:#8e7276}.cal-event.mini{position:static;padding:3px 5px;width:100%;margin:3px 0;flex-direction:row;gap:5px;align-items:center}.cal-event.mini strong{font-size:10px}.cal-event.mini .cal-event-service{display:none}.month-more{font-size:10px;padding:2px 5px;border:0;background:none;color:#777;cursor:pointer}.cal-selected-title{padding:22px 24px;background:#fafafa;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e1e3e5}.cal-selected-title h3{font-size:17px;margin:0}.cal-selected-title span{font-size:12px;color:#888}.cal-date-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid #ddd;padding:12px 6px;gap:3px}.cal-date-strip button{display:flex;flex-direction:column;align-items:center;background:#fff;border:0;border-radius:4px;padding:8px 0;color:#777;font-size:11px;cursor:pointer}.cal-date-strip button strong{font-size:19px;color:#222}.cal-date-strip button small{font-size:10px}.cal-date-strip button.is-selected{background:#bd2035;color:#fff}.cal-date-strip button.is-selected strong{color:#fff}.cal-list-details{margin:28px 0}.cal-list-details summary{cursor:pointer;color:#777;font-size:13px}.staff-dialog{border:0;border-radius:8px;padding:28px;width:min(620px,calc(100% - 32px));max-height:85vh;overflow:auto;box-shadow:0 20px 80px #0003}.staff-dialog::backdrop{background:#0005}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.dialog-header h2{margin:0;font-size:22px}.dialog-close{background:#f3f3f3;border:0;border-radius:4px;padding:8px 12px;cursor:pointer}.staff-dialog .appointment{padding:0;border:0;margin:0}.staff-dialog .blockform{grid-template-columns:1fr 1fr}.staff-dialog .blockform label:nth-child(3){grid-column:1/-1}.staff-dialog .notice{margin:16px 0}.cal-controls button{white-space:nowrap}.staff-dialog .details{grid-template-columns:1fr}.calendar-filters{margin:18px 0}.calendar-filters #filterDate{width:160px}.calendar-hint{font-size:12px;color:#888;margin:12px 0}.pending-filter{cursor:pointer;text-align:left;font:inherit}.pending-filter:hover{border-color:#d5a1aa}.stats{margin:24px 0 20px}.staff-note{font-size:12px;color:#888;margin:12px 0 24px}#blockFeedback{margin:0}#detailFeedback{margin:16px 0}
@media(max-width:700px){.calendar-toolbar{gap:14px;align-items:start}.calendar-toolbar h2{font-size:20px}.cal-controls{width:100%;justify-content:space-between}.cal-navigation{gap:5px}.cal-navigation .btn{font-size:12px;padding:7px 10px}.cal-view-switch button{padding:7px 15px}.calendar-shell{border-radius:5px}.cal-head-gutter,.cal-day-heading{height:82px}.cal-event{padding:9px;font-size:13px}.cal-event strong{font-size:15px}.cal-event-time{font-size:12px}.cal-event-service,.cal-event-status{font-size:11px}.cal-month-cell{min-height:66px;padding:3px}.cal-month-day{flex-direction:column;gap:3px;padding:4px}.cal-month-day strong{font-size:16px}.month-count{font-size:10px;min-height:14px}.month-events{display:none}.cal-month-weekdays span{padding:12px 0;font-size:11px}.cal-legend{gap:12px;font-size:11px}.calendar-filters input[type=search]{width:100%;flex-basis:100%}.staff-dialog{padding:22px}.staff-dialog .blockform{grid-template-columns:1fr}.cal-selected-title{padding:18px}.cal-selected-title h3{font-size:16px}.stats{gap:8px}.stat{padding:14px 12px}.stat strong{font-size:25px}.staff-note{font-size:11px}}
