.resource-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.view-switch{display:flex;gap:3px;padding:3px;background:#f0f5f2;border-radius:8px}
.view-switch button{border:0;border-radius:6px;background:transparent;color:#728b7c;padding:8px 12px;font-size:11px;font-weight:600;white-space:nowrap}
.view-switch button[aria-pressed="true"]{background:#fff;color:#176d60;box-shadow:0 1px 4px #1d52321a}
.view-switch span{margin-left:6px;font-weight:400;opacity:.75}
.resource-filters{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.resource-filters label{display:flex;flex-direction:column;gap:4px;font-size:9px;color:#83968a}
.resource-filters select{border:1px solid var(--line);border-radius:6px;background:white;min-height:33px;padding:7px 9px;color:#425d51;font-size:11px;max-width:220px}
.resource-filters .button{min-height:33px;font-size:10px;padding:7px 9px}
.calendar-head,.calendar-grid{grid-template-columns:62px repeat(var(--columns),minmax(190px,1fr));min-width:calc(62px + var(--columns) * 190px)}
.doctor-head{padding:15px 10px;gap:7px;min-width:0}
.doctor-head .avatar{width:29px;height:29px;font-size:9px}
.doctor-head .avatar svg{width:17px;height:17px}
.doctor-head strong{font-size:11px}
.doctor-head small{font-size:8px;line-height:1.5}
.doctor-count{padding:3px 5px}
.chair-view .calendar-head,.chair-view .calendar-grid{grid-template-columns:48px repeat(var(--columns),minmax(128px,1fr));min-width:calc(48px + var(--columns) * 128px)}
.chair-view .doctor-head .avatar{display:none}
.chair-view .appointment{left:4px;right:4px;padding:7px 6px}
.appointment{z-index:1}
.calendar-slot,.calendar-unavailable{position:absolute;left:0;right:0;display:block;border:0;border-radius:3px;padding:0 6px;text-align:left;background:transparent}
.calendar-slot{color:#176d60;font-size:10px;line-height:1;touch-action:pan-x pan-y}
.calendar-slot span{opacity:0;pointer-events:none}
.calendar-slot:focus-visible{outline:2px solid #4d9b88;outline-offset:-2px;background:#e8f4ee}
.calendar-slot:focus-visible span{opacity:1}
.calendar-unavailable{background:#8a9c9210}
@media(hover:hover){.calendar-slot:hover{background:#e8f4ee;box-shadow:inset 0 0 0 1px #b5d8ca}.calendar-slot:hover span{opacity:1}}
.branch-metrics{gap:20px}
.storage-notice,.schedule-hint{background:#fff8ec;color:#927344;padding:12px 15px;font-size:11px;line-height:1.6}
.storage-notice{border:1px solid #f1e2c6;border-radius:8px;margin-bottom:18px}
.schedule-hint button{background:transparent;border:0;text-decoration:underline;color:#806130;font-size:11px;padding:2px 5px}
@media(max-width:800px){.resource-toolbar{padding:12px 14px;gap:12px}.resource-filters{gap:8px}.resource-filters select{max-width:200px}.calendar-subbar{flex-wrap:wrap;gap:10px}.calendar-subbar>.muted{display:block;font-size:9px}}
@media(max-width:520px){.resource-toolbar{padding:12px 10px}.resource-filters{width:100%}.resource-filters label{flex:1;min-width:100px}.resource-filters select{max-width:100%;width:100%}.view-switch button{font-size:10px;padding:8px 10px}.calendar-bottom{flex-direction:column}.calendar-bottom>span:last-child{max-width:none;text-align:left}}
