.preview-badge{color:#72570a;text-transform:uppercase;background:#fff2bf;border-radius:999px;padding:.42rem .65rem;font-size:.52rem;font-weight:900}.schedule-workspace{gap:1rem;display:grid}.schedule-toolbar{background:#fff;border:1px solid #d8e5df;border-radius:14px;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:58px;padding:.65rem .8rem;display:grid;box-shadow:0 12px 34px #133e360e}.schedule-toolbar>.button{justify-self:end}.schedule-view-switch{background:#edf5f1;border-radius:10px;gap:.2rem;padding:.25rem;display:flex}.schedule-view-switch a{color:#61766f;border-radius:8px;padding:.48rem .8rem;font-size:.62rem;font-weight:850}.schedule-view-switch a.active{color:#0b7451;background:#fff;box-shadow:0 3px 10px #0c40321a}.schedule-nav{justify-content:center;align-items:center;gap:.7rem;display:flex}.schedule-nav a{color:#315f55;border:1px solid #d7e3de;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.schedule-nav strong{color:#0c3042;text-align:center;min-width:220px;font-size:.73rem}.schedule-metrics{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.schedule-metrics article{background:#fff;border:1px solid #dce7e2;border-radius:13px;grid-template-columns:auto 1fr;align-items:center;column-gap:.7rem;padding:1rem;display:grid}.schedule-metrics svg{color:#16865e;background:#e8f6ef;border-radius:10px;grid-row:1/3;width:36px;height:36px;padding:.5rem}.schedule-metrics strong{color:#0c3042;font-size:1.1rem}.schedule-metrics span{color:#6c7e78;font-size:.56rem;font-weight:750}.schedule-metrics article.warning svg{color:#9a7410;background:#fff4ce}.schedule-metrics article.danger svg{color:#ad4234;background:#ffebe7}.schedule-main-grid{grid-template-columns:minmax(0,1fr) 300px;gap:1rem;display:grid}.schedule-calendar,.coverage-queue,.capacity-panel,.recurrence-panel,.dispatch-drawer,.availability-manager{background:#fff;border:1px solid #dce7e2;border-radius:16px;box-shadow:0 15px 38px #133e360d}.schedule-calendar>header,.coverage-queue>header,.capacity-panel>header{border-bottom:1px solid #e5eeea;justify-content:space-between;align-items:center;padding:1rem 1.1rem;display:flex}.schedule-calendar h2,.coverage-queue h2,.capacity-panel h2,.recurrence-panel h2,.dispatch-drawer h2{font-size:1rem}.schedule-calendar>header>a{color:#12815b;font-size:.58rem;font-weight:850}.schedule-days{min-height:430px;display:grid}.schedule-days.week{grid-template-columns:repeat(7,minmax(112px,1fr));overflow-x:auto}.schedule-days.day{grid-template-columns:1fr}.schedule-days>section{border-right:1px solid #e8efec;min-width:0}.schedule-days>section:last-child{border-right:0}.schedule-days>section>header{background:#f8fbfa;border-bottom:1px solid #e8efec;grid-template-columns:1fr auto;align-items:center;padding:.75rem;display:grid}.schedule-days>section>header span{color:#6d7f79;text-transform:uppercase;font-size:.52rem;font-weight:850}.schedule-days>section>header strong{color:#123749;font-size:.85rem}.schedule-days>section>header small{color:#8a9893;grid-column:1/-1;margin-top:.15rem;font-size:.48rem}.schedule-days>section>div{align-content:start;gap:.5rem;padding:.55rem;display:grid}.schedule-days>section>div>p{color:#94a19d;text-align:center;padding:1.5rem .2rem;font-size:.55rem}.schedule-job{color:#163846;text-align:left;cursor:pointer;background:#fff;border:1px solid #dce8e3;border-left:3px solid #16855e;border-radius:10px;gap:.22rem;padding:.65rem;display:grid}.schedule-job:hover,.schedule-job.selected{border-color:#16855e;box-shadow:0 7px 18px #16855e1f}.schedule-job.status-unassigned,.schedule-job.status-offered{background:#fffaf0;border-left-color:#efb51e}.schedule-job.status-completed{opacity:.72;border-left-color:#7f918a}.schedule-job time{color:#13815b;font-size:.5rem;font-weight:900}.schedule-job strong{font-size:.62rem}.schedule-job span,.schedule-job small,.schedule-job b{font-size:.49rem}.schedule-job small{color:#788984;align-items:center;gap:.2rem;display:flex}.schedule-job b{color:#108058}.schedule-side-stack{align-content:start;gap:1rem;display:grid}.coverage-queue>header>span{color:#755a0d;background:#fff1be;border-radius:50%;place-items:center;min-width:28px;height:28px;font-size:.58rem;font-weight:900;display:grid}.coverage-queue>button{color:#133847;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #edf2ef;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;width:100%;padding:.75rem 1rem;display:grid}.coverage-queue>button:hover{background:#f6fbf8}.coverage-queue>button>span{color:#14845e;font-size:.55rem;font-weight:900}.coverage-queue>button>div{display:grid}.coverage-queue strong{font-size:.6rem}.coverage-queue small{color:#7a8984;font-size:.49rem}.coverage-queue>p{color:#6f817b;padding:1rem;font-size:.57rem}.capacity-panel>header>svg{color:#198961}.capacity-panel>article{border-bottom:1px solid #edf2ef;grid-template-columns:1fr auto;gap:.35rem;padding:.8rem 1rem;display:grid}.capacity-panel>article>div{display:grid}.capacity-panel strong{font-size:.58rem}.capacity-panel small,.capacity-panel article>span{color:#778984;font-size:.48rem}.capacity-panel i{background:#e9f1ed;border-radius:999px;grid-column:1/-1;height:5px;overflow:hidden}.capacity-panel i b{border-radius:inherit;background:#16855e;height:100%;display:block}.recurrence-panel{padding:1rem}.recurrence-panel>header{align-items:center;gap:.6rem;display:flex}.recurrence-panel>header>svg{color:#16855e}.recurrence-panel>article{border-bottom:1px solid #edf2ef;justify-content:space-between;align-items:center;padding:.65rem 0;display:flex}.recurrence-panel article>div{display:grid}.recurrence-panel strong{font-size:.58rem}.recurrence-panel small,.recurrence-panel time{color:#758681;font-size:.48rem}.dispatch-drawer{gap:1rem;padding:1.1rem;display:grid}.dispatch-drawer>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.dispatch-drawer>header>div{gap:.1rem;display:grid}.dispatch-drawer>header span{color:#71837d;font-size:.54rem}.dispatch-form{grid-template-columns:repeat(4,1fr);gap:.7rem;display:grid}.dispatch-form label{color:#35564f;gap:.3rem;font-size:.54rem;font-weight:850;display:grid}.dispatch-form input,.dispatch-form select{color:#143847;min-height:44px;font:inherit;background:#fff;border:1px solid #ccdbd4;border-radius:9px;padding:.65rem;font-size:.62rem}.dispatch-candidates{grid-template-columns:repeat(5,1fr);gap:.55rem;display:grid}.dispatch-candidates h3{grid-column:1/-1;font-size:.65rem}.dispatch-candidates article{border:1px solid #d9e7e0;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;padding:.6rem;display:grid}.dispatch-candidates article>span{color:#15835d;background:#e8f5ef;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.dispatch-candidates article>div{display:grid}.dispatch-candidates strong{font-size:.53rem}.dispatch-candidates small{color:#75857f;font-size:.46rem}.dispatch-candidates article.blocked{color:#9b463a;background:#fff8f5}.dispatch-candidates article.blocked>span{color:#a74336;background:#ffebe7}.dispatch-drawer>.button{justify-self:start}.schedule-loading{color:#16855e;place-items:center;min-height:420px;display:grid}.availability-manager{gap:1rem;padding:1.1rem;display:grid}.availability-head{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.availability-head>div{gap:.15rem;display:grid}.availability-head h2{font-size:1.1rem}.availability-head p{color:#6f817b;font-size:.58rem}.availability-head label{color:#45645d;gap:.3rem;font-size:.54rem;font-weight:850;display:grid}.availability-head select{background:#fff;border:1px solid #ccdbd4;border-radius:9px;min-width:230px;min-height:42px;padding:.6rem}.availability-days{gap:.6rem;display:grid}.availability-card{background:#fbfdfc;border:1px solid #dde9e3;border-radius:11px;grid-template-columns:150px 1fr 1fr;align-items:center;gap:.8rem;padding:.8rem;display:grid}.availability-toggle{color:#153b49;align-items:center;gap:.55rem;font-size:.62rem;font-weight:850;display:flex}.availability-toggle input{accent-color:#16855e;width:18px;height:18px}.availability-card label:not(.availability-toggle){color:#5c726b;gap:.25rem;font-size:.5rem;font-weight:800;display:grid}.availability-card input[type=time]{background:#fff;border:1px solid #ccdbd4;border-radius:8px;min-height:40px;padding:.55rem}.availability-card.disabled{opacity:.58}.availability-manager>.button{justify-self:start}@media (max-width:1180px){.schedule-main-grid{grid-template-columns:1fr}.schedule-side-stack,.dispatch-candidates{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.schedule-toolbar{grid-template-columns:1fr auto}.schedule-toolbar>.button{grid-column:1/-1;width:100%}.schedule-nav{justify-content:flex-end}.schedule-nav strong{min-width:0;font-size:.58rem}.schedule-metrics{grid-template-columns:repeat(2,1fr)}.schedule-days.week{grid-template-columns:repeat(7,180px)}.schedule-side-stack,.dispatch-form,.dispatch-candidates{grid-template-columns:1fr}.dispatch-drawer>header,.availability-head{flex-direction:column;align-items:stretch}.dispatch-drawer>.button,.availability-manager>.button{width:100%}.availability-head select{width:100%;min-width:0}.availability-card{grid-template-columns:1fr 1fr}.availability-toggle{grid-column:1/-1}}.dispatch-lock-note{color:#745d18;background:#fff5d5;border-radius:9px;padding:.7rem .8rem;font-size:.55rem}.availability-grid{grid-template-columns:240px 1fr;gap:1rem;display:grid}.availability-cleaners{border:1px solid #dce7e2;border-radius:12px;overflow:hidden}.availability-cleaners h2{border-bottom:1px solid #e6eeea;padding:.85rem 1rem;font-size:.7rem}.availability-cleaners button{color:#153946;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf2ef;align-items:center;gap:.6rem;width:100%;padding:.72rem .8rem;display:flex}.availability-cleaners button:hover,.availability-cleaners button.active{background:#eef8f3}.availability-cleaners button>span{color:#fff;background:#16855e;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.6rem;font-weight:900;display:grid}.availability-cleaners button>div{display:grid}.availability-cleaners strong{font-size:.58rem}.availability-cleaners small{color:#74857f;font-size:.47rem}.availability-card{gap:.9rem;padding:1rem;display:grid}.availability-card>header{justify-content:space-between;align-items:center;display:flex}.availability-card>header h2{font-size:.9rem}.availability-card>header p{color:#6f817b;font-size:.54rem}.availability-card>header svg{color:#16855e}.availability-days article{opacity:.65;background:#f8fbfa;border:1px solid #e2ebe7;border-radius:10px;grid-template-columns:150px 1fr 1fr;align-items:center;gap:.7rem;padding:.7rem .8rem;display:grid}.availability-days article.active{opacity:1;background:#fff}.availability-days article label:not(.availability-toggle){color:#62766f;gap:.25rem;font-size:.5rem;font-weight:800;display:grid}.availability-days article input[type=time]{background:#fff;border:1px solid #ccdbd4;border-radius:8px;min-height:38px;padding:.5rem}.availability-card>.button{justify-self:start}@media (max-width:760px){.availability-grid{grid-template-columns:1fr}.availability-days article{grid-template-columns:1fr 1fr}.availability-days article .availability-toggle{grid-column:1/-1}.availability-card>.button{width:100%}}.command-workspace .schedule-toolbar,.command-workspace .schedule-metrics article,.command-workspace .schedule-calendar,.command-workspace .coverage-queue,.command-workspace .capacity-panel,.command-workspace .recurrence-panel,.command-workspace .dispatch-drawer,.command-workspace .availability-manager,.command-workspace .availability-cleaners{border-color:var(--os-border);background:var(--os-surface);color:var(--os-text);box-shadow:var(--os-shadow)}.command-workspace .schedule-view-switch{background:var(--os-surface-2)}.command-workspace .schedule-view-switch a{color:var(--os-muted)}.command-workspace .schedule-view-switch a.active{background:var(--os-surface);color:var(--os-accent);box-shadow:0 3px 10px color-mix(in srgb,var(--os-accent) 14%,transparent)}.command-workspace .schedule-nav a{border-color:var(--os-border);color:var(--os-accent)}.command-workspace .schedule-nav strong,.command-workspace .schedule-metrics strong{color:var(--os-text)}.command-workspace .schedule-metrics svg{background:var(--os-accent-soft);color:var(--os-accent)}.command-workspace .schedule-metrics span{color:var(--os-muted)}.command-workspace .schedule-calendar>header,.command-workspace .coverage-queue>header,.command-workspace .capacity-panel>header,.command-workspace .schedule-days>section,.command-workspace .schedule-days>section>header,.command-workspace .coverage-queue>button,.command-workspace .capacity-panel>article,.command-workspace .recurrence-panel>article{border-color:var(--os-border)}.command-workspace .schedule-calendar>header>a,.command-workspace .coverage-queue>button>span,.command-workspace .capacity-panel>header>svg,.command-workspace .recurrence-panel>header>svg{color:var(--os-accent)}.command-workspace .schedule-days>section>header{background:var(--os-surface-2)}.command-workspace .schedule-days>section>header span,.command-workspace .schedule-days>section>header small,.command-workspace .schedule-job small,.command-workspace .coverage-queue small,.command-workspace .capacity-panel small,.command-workspace .capacity-panel article>span,.command-workspace .recurrence-panel small,.command-workspace .recurrence-panel time{color:var(--os-muted)}.command-workspace .schedule-days>section>header strong{color:var(--os-text)}.command-workspace .schedule-job{border-color:var(--os-border);border-left-color:var(--os-accent);background:var(--os-surface);color:var(--os-text)}.command-workspace .schedule-job:hover,.command-workspace .schedule-job.selected{border-color:var(--os-accent);box-shadow:0 7px 18px color-mix(in srgb,var(--os-accent) 16%,transparent)}.command-workspace .schedule-job time,.command-workspace .schedule-job b{color:var(--os-accent)}.command-workspace .coverage-queue>button{color:var(--os-text)}.command-workspace .coverage-queue>button:hover{background:var(--os-surface-2)}.command-workspace .capacity-panel i{background:var(--os-border)}.command-workspace .capacity-panel i b{background:var(--os-accent)}.command-workspace .dispatch-form label,.command-workspace .availability-head label,.command-workspace .availability-card label:not(.availability-toggle),.command-workspace .availability-days article label:not(.availability-toggle){color:var(--os-muted)}.command-workspace .dispatch-form input,.command-workspace .dispatch-form select,.command-workspace .availability-head select,.command-workspace .availability-card input[type=time],.command-workspace .availability-days article input[type=time]{border-color:var(--os-border);background:var(--os-surface-2);color:var(--os-text)}.command-workspace .dispatch-candidates article{border-color:var(--os-border);background:var(--os-surface)}.command-workspace .dispatch-candidates article>span{background:var(--os-accent-soft);color:var(--os-accent)}.command-workspace .schedule-loading{color:var(--os-accent)}.command-workspace .availability-cleaners h2,.command-workspace .availability-cleaners button{border-color:var(--os-border)}.command-workspace .availability-cleaners button{background:var(--os-surface);color:var(--os-text)}.command-workspace .availability-cleaners button:hover,.command-workspace .availability-cleaners button.active{background:var(--os-accent-soft)}.command-workspace .availability-cleaners button>span{background:var(--os-accent);color:#fff}.command-workspace .availability-cleaners small{color:var(--os-muted)}.command-workspace .availability-card,.command-workspace .availability-days article{border-color:var(--os-border);background:var(--os-surface-2)}.command-workspace .availability-days article.active{background:var(--os-surface)}.command-workspace .availability-toggle{color:var(--os-text)}.command-workspace .availability-toggle input{accent-color:var(--os-accent)}.command-workspace .availability-card>header svg{color:var(--os-accent)}
.schedule-days.week{grid-template-columns:repeat(7,minmax(0,1fr));overflow-x:visible}.availability-card{grid-template-columns:1fr}@media (max-width:760px){.schedule-days.week{grid-template-columns:repeat(7,180px);overflow-x:auto}.availability-card{grid-template-columns:1fr}}
