.rs-root{font-family:Plus Jakarta Sans,sans-serif;font-size:11px;background:var(--stf-surface);color:var(--stf-ink);border:1px solid var(--stf-divider);border-radius:8px;padding:14px 16px}.rs-root+.rs-root{margin-top:16px}.rs-hdr{justify-content:space-between;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--stf-divider)}.rs-hdr,.rs-hdr-left{display:flex;align-items:baseline;gap:16px}.rs-hdr-title{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.rs-hdr-meta{font-size:10px;font-variant-numeric:tabular-nums;letter-spacing:.05em;color:var(--stf-muted)}.rs-totals-toggle{font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;padding:4px 10px;border-radius:4px;background:var(--stf-chip-bg);color:var(--stf-chip-fg);border:1px solid var(--stf-divider);cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-family:inherit}.rs-totals-toggle:hover{border-color:var(--stf-muted)}.rs-row{display:grid;grid-template-columns:22px 140px 68px 1fr 68px var(--rs-totals-w,180px);align-items:center;gap:0;transition:grid-template-columns .18s ease}.rs-row.rs-areas{grid-template-columns:22px 140px 68px 1fr 68px var(--rs-totals-w,150px)}.rs-root.rs-totals-collapsed .rs-row{--rs-totals-w:52px}.rs-hour-axis{display:grid;grid-template-columns:22px 140px 68px 1fr 68px var(--rs-totals-w,180px);padding-bottom:6px;border-bottom:1px solid var(--stf-divider);color:var(--stf-muted);font-size:9px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.04em;transition:grid-template-columns .18s ease}.rs-root.rs-totals-collapsed .rs-hour-axis{grid-template-columns:22px 140px 68px 1fr 68px 52px}.rs-hour-axis.rs-hour-axis-areas{grid-template-columns:22px 140px 68px 1fr 68px var(--rs-totals-w,150px)}.rs-root.rs-totals-collapsed .rs-hour-axis.rs-hour-axis-areas{grid-template-columns:22px 140px 68px 1fr 68px 52px}.rs-hour-axis-gap{font-size:8px;letter-spacing:.12em;text-transform:uppercase;text-align:center;align-self:end;padding:0 4px 2px}.rs-hour-axis-canvas{display:grid;grid-template-columns:repeat(24,1fr);align-items:end}.rs-hour-axis-canvas span{padding:0 0 2px 3px;position:relative;font-size:8.5px;letter-spacing:0;overflow:hidden;white-space:nowrap}.rs-hour-axis-canvas span:before{content:"";position:absolute;top:100%;left:0;width:1px;height:6px;background:currentColor;opacity:.2}.rs-hour-axis-canvas span.rs-now-hour{color:var(--stf-danger)}.rs-hour-axis-totals{display:flex;gap:2px;justify-content:flex-end;padding:0 6px;font-size:8px;letter-spacing:.12em;text-transform:uppercase}.rs-hour-axis-totals span{min-width:30px;text-align:center;padding:0}.rs-role-hdr{display:grid;grid-template-columns:22px 140px 68px 1fr 68px var(--rs-totals-w,180px);align-items:center;padding:10px 0 4px;color:var(--stf-muted);transition:grid-template-columns .18s ease}.rs-root.rs-totals-collapsed .rs-role-hdr{grid-template-columns:22px 140px 68px 1fr 68px 52px}.rs-role-hdr-label{grid-column:1/4;padding-left:22px;font-size:9px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--rs-role-c,var(--stf-muted));display:flex;align-items:center;gap:6px}.rs-role-hdr-line{grid-column:4/6;height:1px;background:linear-gradient(90deg,var(--rs-role-c,var(--stf-muted)),transparent 90%)}.rs-role-hdr-count{grid-column:6;font-size:9px;font-weight:600;font-variant-numeric:tabular-nums;text-align:right;opacity:.5;padding-right:6px}.rs-track{padding:3px 0}.rs-avail{display:flex;align-items:center;justify-content:center;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none}.rs-avail-lamp{display:block;width:8px;height:8px;border-radius:50%;transition:background .15s,box-shadow .15s,opacity .15s}.rs-avail-lamp.rs-avail-on{background:#22c55e;box-shadow:0 0 0 1px rgba(34,197,94,.25),0 0 6px rgba(34,197,94,.65)}.rs-avail-lamp.rs-avail-off{background:#ef4444;box-shadow:0 0 0 1px rgba(239,68,68,.25),0 0 4px rgba(239,68,68,.4);opacity:.7}.rs-avail-lamp.rs-avail-override{background:#f59e0b;box-shadow:0 0 0 1px rgba(245,158,11,.3),0 0 6px rgba(245,158,11,.6)}.rs-track-unavail .rs-lane,.rs-track-unavail .rs-name,.rs-track-unavail .rs-totals{opacity:.5;transition:opacity .15s}.rs-track-unavail:hover .rs-lane,.rs-track-unavail:hover .rs-name,.rs-track-unavail:hover .rs-totals{opacity:.8}.rs-track-unavail .rs-name{border-left-color:var(--stf-divider)!important}.rs-track-override .rs-lane,.rs-track-override .rs-name,.rs-track-override .rs-totals{opacity:.85}.rs-track-override .rs-name{border-left-color:#f59e0b!important}.rs-name{padding:0 8px 0 14px;font-size:11px;font-weight:500;border-left:2px solid var(--rs-role-c,var(--stf-muted));display:flex;align-items:center;gap:6px;color:var(--stf-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rs-name-dim{opacity:.55}.rs-rest-chip{display:inline-flex;align-items:center;background:color-mix(in srgb,var(--stf-warn) 18%,transparent);color:var(--stf-warn);font-size:8px;font-weight:800;letter-spacing:.1em;padding:2px 5px;border-radius:3px;text-transform:uppercase;margin-left:auto;flex-shrink:0}.rs-lane{position:relative;height:22px;border-radius:4px;background:var(--stf-lane-bg);overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none}.rs-lane:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(8.3333% - 1px),var(--stf-lane-line) calc(8.3333% - 1px),var(--stf-lane-line) 8.3333%);pointer-events:none}.rs-lane.rs-lane-warn{box-shadow:inset 0 0 0 1px var(--stf-warn)}.rs-lane-cells{position:absolute;inset:0;display:grid;grid-template-columns:repeat(48,1fr);z-index:1}.rs-lane-cell{cursor:crosshair}.rs-pill{position:absolute;top:2px;bottom:2px;background:var(--rs-role-c,#1cabff);border-radius:3px;display:flex;align-items:center;justify-content:center;padding:0 8px;font-size:9px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#fff;white-space:nowrap;overflow:hidden;box-shadow:0 0 0 1px hsla(0,0%,100%,.08),0 1px 3px rgba(0,0,0,.3);pointer-events:auto;cursor:grab;z-index:2;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:box-shadow .12s,transform .04s}.rs-pill:active{cursor:grabbing}.rs-pill.rs-pill-dragging{cursor:grabbing;z-index:6;box-shadow:0 0 0 1px hsla(0,0%,100%,.3),0 4px 14px rgba(0,0,0,.55);transform:translateY(-1px)}[data-theme=light] .rs-pill.rs-pill-dragging{box-shadow:0 0 0 1px rgba(0,0,0,.15),0 4px 14px rgba(0,0,0,.22)}.rs-pill.rs-pill-unavail{pointer-events:none;cursor:default}[data-theme=light] .rs-pill{box-shadow:0 0 0 1px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.15)}.rs-pill:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,hsla(0,0%,100%,.18),transparent 45%);pointer-events:none;border-radius:3px}.rs-pill-label{position:relative;z-index:1}.rs-pill.rs-pill-narrow .rs-pill-label{display:none}.rs-pill.rs-pill-ot{background:repeating-linear-gradient(-45deg,var(--rs-role-c,#1cabff) 0 6px,var(--stf-ot) 6px 12px)}.rs-pill.rs-pill-ot:before{content:"OT";position:absolute;right:3px;top:1px;font-size:7px;background:var(--stf-ot);color:#fff;padding:0 3px;border-radius:2px;letter-spacing:.1em;font-weight:800;z-index:2}.rs-pill.rs-pill-unavail{background:repeating-linear-gradient(45deg,var(--stf-lane-line) 0 4px,var(--stf-lane-bg) 4px 8px);opacity:.5;color:transparent;box-shadow:none}.rs-playhead{top:0;bottom:0;width:1px;box-shadow:0 0 8px var(--stf-danger);z-index:5;pointer-events:none}.rs-playhead,.rs-playhead:before{position:absolute;background:var(--stf-danger)}.rs-playhead:before{content:"";top:-5px;left:-4px;width:9px;height:8px;clip-path:polygon(0 0,100% 0,50% 100%)}.rs-totals{display:flex;gap:2px;justify-content:flex-end;padding:0 6px;font-size:10px;font-weight:600;font-variant-numeric:tabular-nums}.rs-totals span{min-width:30px;text-align:center;color:var(--stf-ink);opacity:.85}.rs-totals span.rs-dim{opacity:.35}.rs-totals span.rs-ot-val{color:var(--stf-warn)}.rs-totals-collapsed{justify-content:flex-end;font-size:11px;font-weight:700;padding-right:8px;color:var(--stf-ink);opacity:.85}.rs-totals-collapsed.rs-warn{color:var(--stf-warn)}.rs-gap{padding:0 4px;text-align:center;font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--stf-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rs-gap.rs-gap-null{opacity:.4}.rs-gap-pill{display:inline-block;padding:2px 6px;border-radius:3px;color:#fff;font-weight:700;letter-spacing:.02em;line-height:1.2}.rs-gap-amber{background:#f59e0b}.rs-gap-red{background:#ef4444;box-shadow:0 0 8px rgba(239,68,68,.45)}.rs-coverage-svg{display:block;width:100%;height:140px}.rs-coverage-band{fill:var(--stf-divider);opacity:.35}.rs-coverage-hourline{stroke:var(--stf-lane-line);stroke-width:1;opacity:.55}.rs-coverage-gridline{stroke:var(--stf-divider);stroke-width:1;stroke-dasharray:2 4;opacity:.75}.rs-coverage-baseline{stroke:var(--stf-divider);stroke-width:1;opacity:1}.rs-coverage-area{pointer-events:none}.rs-coverage-line{fill:none;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.rs-coverage-line-halo{fill:none;stroke:#262aff;stroke-width:3.5;stroke-linejoin:round;stroke-linecap:round;opacity:.35;pointer-events:none}.rs-coverage-hit{fill:transparent;cursor:default}.rs-coverage-hit:hover{fill:rgba(38,42,255,.08)}.rs-coverage-peak-halo{fill:#fc0;opacity:.35;animation:rs-coverage-peak-pulse 2.2s ease-in-out infinite;pointer-events:none}.rs-coverage-peak-dot{fill:#fff;stroke:#262aff;stroke-width:2;pointer-events:none}@keyframes rs-coverage-peak-pulse{0%,to{r:7;opacity:.35}50%{r:10;opacity:.15}}@media (prefers-reduced-motion:reduce){.rs-coverage-peak-halo{animation:none}}.rs-coverage-yaxis{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;font-size:9px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--stf-muted);padding:4px 10px 4px 0;height:140px}.rs-pill-edge{position:absolute;top:0;bottom:0;width:6px;cursor:ew-resize;z-index:1}.rs-pill-edge.rs-pill-edge-left{left:0}.rs-pill-edge.rs-pill-edge-right{right:0}.rs-pill-edge:after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:3px;height:14px;background:#fff;border-radius:2px;box-shadow:0 0 6px hsla(0,0%,100%,.65);opacity:0;transition:opacity .12s}.rs-pill:hover .rs-pill-edge:after{opacity:.85}.rs-pill-edge.rs-pill-edge-left:after{left:1px}.rs-pill-edge.rs-pill-edge-right:after{right:1px}.rs-pill.rs-pill-confirming .rs-pill-edge{display:none}.rs-pill.rs-pill-confirming{cursor:default!important;padding:0!important}.rs-pill-confirm{position:absolute;inset:0;display:flex;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;z-index:3}.rs-pill-confirm-no,.rs-pill-confirm-yes{flex:1;background:transparent;border:none;color:#fff;font:inherit;cursor:pointer;font-family:Plus Jakarta Sans,sans-serif;transition:background .1s;padding:0}.rs-pill-confirm-yes:hover{background:rgba(239,68,68,.55)}.rs-pill-confirm-no:hover{background:rgba(0,0,0,.35)}.rs-history-btn{background:var(--stf-chip-bg);color:var(--stf-chip-fg);border:1px solid var(--stf-divider);border-radius:4px;padding:4px 8px;cursor:pointer;font-family:inherit;font-size:13px;line-height:1;display:inline-flex;align-items:center;justify-content:center;min-width:28px;transition:border-color .12s,color .12s,opacity .12s}.rs-history-btn:hover:not(:disabled){border-color:var(--stf-muted);color:var(--stf-ink)}.rs-history-btn:disabled{opacity:.35;cursor:default}.rs-history-btns{display:inline-flex;gap:4px;margin-right:8px}@keyframes rs-day-pulse{0%{box-shadow:0 0 0 0 rgba(28,171,255,0)}30%{box-shadow:0 0 0 4px rgba(28,171,255,.55)}to{box-shadow:0 0 0 0 rgba(28,171,255,0)}}.rota-slots-day-chip.rs-day-pulse{animation:rs-day-pulse .6s ease-out}.rs-row-clear-btn{background:transparent;border:none;cursor:pointer;color:var(--stf-muted);font-size:13px;line-height:1;padding:0 4px;opacity:0;transition:opacity .12s,color .12s;font-family:inherit;margin-left:auto;flex-shrink:0}.rs-areas:hover .rs-row-clear-btn,.rs-track:hover .rs-row-clear-btn{opacity:.55}.rs-areas:hover .rs-row-clear-btn:hover,.rs-track:hover .rs-row-clear-btn:hover{opacity:1;color:var(--stf-warn)}