.staff-page .legend{display:inline-block;width:.75rem;height:.75rem;border-radius:.25rem;border:1.5px solid var(--color-cream-300)}.staff-page .legend.free{background:var(--color-blush-100);border-color:var(--color-coral-400)}.staff-page .legend.selected{background:var(--color-coral-500);border-color:var(--color-coral-500)}.staff-page .legend.closed{background:var(--color-cream-200);opacity:.7}.staff-page .legend.full{background:#fff;border-style:dashed}.staff-page .staff-day{aspect-ratio:1;border-radius:.85rem;border:2px solid var(--color-cream-300);background:#fff;font-weight:600;font-size:.9rem;cursor:pointer;transition:transform .16s var(--ease-settle),background .16s,border-color .16s,box-shadow .16s,color .16s;position:relative}.staff-page .staff-day:hover:not(:disabled){border-color:var(--color-coral-400);transform:translateY(-1px)}.staff-page .staff-day.is-muted{background:transparent;border-color:transparent;cursor:default}.staff-page .staff-day.is-past{opacity:.35}.staff-page .staff-day.is-closed{background:var(--color-cream-200);color:var(--color-ink-500)}.staff-page .staff-day.is-open-free{background:var(--color-blush-100);border-color:var(--color-coral-400)}.staff-page .staff-day.is-full{background:#fff;border-style:dashed}.staff-page .staff-day.is-selected{background:var(--color-coral-500)!important;border-color:var(--color-coral-600)!important;color:#fff!important;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--color-coral-500),0 12px 24px -8px #e8889c8c;transform:scale(1.12);z-index:3;font-weight:800}.staff-page .staff-day.is-selected:after{content:"✓";position:absolute;bottom:3px;left:50%;transform:translate(-50%);font-size:.55rem;font-weight:800;color:#fff;line-height:1}.staff-page .staff-day .dot{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:5px;height:5px;border-radius:999px;background:var(--color-coral-500)}.staff-page .staff-day.is-selected .dot{display:none}.staff-page .staff-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;min-height:3.1rem;padding:.55rem .4rem;border-radius:.85rem;border:2px solid var(--color-cream-300);background:#fff;font-weight:700;font-size:.9rem;cursor:pointer;transition:transform .16s var(--ease-settle),background .16s,border-color .16s,box-shadow .16s,color .16s}.staff-page .staff-slot .slot-meta{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.85}.staff-page .staff-slot:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 18px -10px #0003}.staff-page .staff-slot:focus-visible{outline:3px solid var(--color-coral-500);outline-offset:2px}.staff-page .staff-slot.is-free{background:var(--color-blush-100);border-color:var(--color-coral-500);color:var(--color-ink-900);box-shadow:inset 0 0 0 1px #e8889c33}.staff-page .staff-slot.is-free .slot-meta{color:var(--color-coral-600)}.staff-page .staff-slot.is-blocked{background:#ebe6e1;border-color:#b8aea4;border-style:dashed;color:var(--color-ink-500)}.staff-page .staff-slot.is-blocked .slot-time{text-decoration:line-through;opacity:.75}.staff-page .staff-slot.is-blocked .slot-meta{color:var(--color-ink-500)}.staff-page .staff-slot.is-booked{background:var(--color-ink-900);border-color:var(--color-ink-900);border-style:solid;color:#fff;cursor:not-allowed;opacity:1}.staff-page .staff-slot.is-booked .slot-meta{color:var(--color-coral-400)}.staff-page .staff-slot.is-flash{box-shadow:0 0 0 3px #fffffff2,0 0 0 6px var(--color-coral-500)!important;transform:scale(1.06);z-index:1}.staff-page .weekly-row{display:grid;grid-template-columns:3.5rem 1fr;gap:.5rem;align-items:center;padding:.55rem 0;border-bottom:1px solid var(--color-cream-200)}.staff-page .weekly-row:last-child{border-bottom:0}.staff-page .weekly-row label.day-name{font-size:.85rem;font-weight:700;color:var(--color-ink-800)}.staff-page .weekly-controls{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.staff-page .weekly-controls input[type=time]{font:inherit;font-size:.8rem;padding:.3rem .4rem;border-radius:.5rem;border:1.5px solid var(--color-cream-300);background:#fff}.staff-page .weekly-controls input[type=time]:disabled{opacity:.45}.staff-page .toggle-open{font-size:.72rem;font-weight:700;padding:.3rem .55rem;border-radius:999px;border:1.5px solid var(--color-cream-300);background:#fff;cursor:pointer}.staff-page .toggle-open.is-on{background:var(--color-coral-500);border-color:var(--color-coral-500);color:#fff}
