:root{--duty-primary:#0b3b38;--duty-primary-hover:#082f2d;--duty-secondary:#2d7d6a;--duty-accent:#b9f5d8;--duty-canvas:#f5f1e8;--duty-surface:#fff;--duty-subtle:#f7faf7;--duty-ink:#10211f;--duty-muted:#60716d;--duty-border:#d9ded7;--success:#1e7a55;--success-bg:#e5f7ed;--warning:#8a5a12;--warning-bg:#fff2d6;--danger:#b4473c;--danger-bg:#fbe9e5;--info:#2e6fa3;--info-bg:#e7f2fb;--shadow:0 16px 44px #10211f14;--shadow-soft:0 8px 28px #10211f0d;--space-surface:1.5rem;--space-nested:1rem;--radius-surface:24px;--radius-nested:16px;--radius-control:12px;--control-height:2.75rem;--topbar-height:5rem}*{box-sizing:border-box}html{background:var(--duty-canvas);min-height:100%;scroll-padding-top:calc(var(--topbar-height) + 1rem)}body{min-height:100vh;color:var(--duty-ink);background:var(--duty-canvas);font-family:var(--font-manrope), system-ui, sans-serif;margin:0}button,input,select,textarea{font:inherit}button,summary,select{cursor:pointer}:focus-visible{outline-offset:3px;outline:3px solid #2d7d6a59}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:.6rem;font-size:clamp(2rem,4vw,2.5rem);font-weight:760;line-height:1.1}h2{font-size:1.25rem;font-weight:700;line-height:1.35}h3{font-size:1rem;font-weight:700;line-height:1.4}p{line-height:1.55}svg{flex:none;width:1.2rem;height:1.2rem}.eyebrow{color:var(--duty-secondary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.35rem;font-size:.72rem;font-weight:760;line-height:1rem}.muted{color:var(--duty-muted)}.button{min-height:var(--control-height);border-radius:var(--radius-control);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.68rem 1rem;font-weight:700;transition:all .18s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.6;transform:none}.button-primary{color:#fff;background:var(--duty-primary)}.button-primary:hover{background:var(--duty-primary-hover)}.button-secondary{color:var(--duty-primary);border-color:var(--duty-border);background:#fff}.button-danger{color:var(--danger);background:var(--danger-bg);border-color:#e9bbb4}.button-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1rem;height:1rem;animation:.7s linear infinite spin}.count-pill{min-height:2rem;color:var(--duty-primary);background:var(--duty-accent);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:.48rem .8rem;font-weight:750;line-height:1;display:inline-flex}.count-pill-number{font-variant-numeric:tabular-nums;width:3rem;height:3rem;padding:0}label{color:var(--duty-muted);gap:.38rem;font-size:.78rem;font-weight:700;display:grid}input,select,textarea{border:1px solid var(--duty-border);width:100%;min-height:3rem;color:var(--duty-ink);background:var(--duty-surface);border-radius:12px;outline:none;padding:.72rem .82rem}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--duty-secondary);box-shadow:0 0 0 3px #2d7d6a21}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--duty-secondary) 50%), linear-gradient(135deg, var(--duty-secondary) 50%, transparent 50%);background-position:calc(100% - 1.15rem) 1.25rem,calc(100% - .82rem) 1.25rem;background-repeat:no-repeat;background-size:.36rem .36rem,.36rem .36rem;padding-right:2.6rem}small{color:var(--duty-muted);line-height:1.45}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.form-error{color:var(--danger);margin:.3rem 0 0;font-size:.88rem}.form-success{color:var(--success);margin:.3rem 0 0;font-size:.88rem}.action-toast{z-index:80;background:#fff;border:1px solid;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;width:min(25rem,100vw - 2rem);padding:.9rem 1rem;display:grid;position:fixed;top:1.25rem;right:1.25rem;box-shadow:0 18px 50px #10211f2e}.action-toast>svg{width:1.35rem;height:1.35rem}.action-toast>div{gap:.12rem;display:grid}.action-toast strong{font-size:.86rem}.action-toast span{color:var(--duty-muted);font-size:.8rem;line-height:1.4}.action-toast button{width:1.8rem;height:1.8rem;color:var(--duty-muted);background:0 0;border:0;border-radius:8px;font-size:1.15rem}.action-toast-success{border-color:#b8ddc9}.action-toast-success>svg{color:var(--success)}.action-toast-error{border-color:#e9bbb4}.action-toast-error>svg{color:var(--danger)}.auth-page{grid-template-columns:minmax(20rem,.9fr) minmax(25rem,1.1fr);min-height:100vh;display:grid}.auth-brand-panel{color:#fff;background:var(--duty-primary);flex-direction:column;justify-content:space-between;padding:clamp(2rem,6vw,5rem);display:flex}.auth-brand-panel>div{max-width:32rem}.auth-brand-panel p{color:#dbe9e5}.auth-tagline{letter-spacing:-.055em;margin-bottom:1rem;font-size:clamp(2.5rem,5vw,4.4rem);font-weight:760;line-height:1.03;color:#fff!important}.auth-card{border:1px solid var(--duty-border);width:min(28rem,100% - 3rem);box-shadow:var(--shadow);background:#fff;border-radius:24px;align-self:center;margin:3rem auto;padding:clamp(1.6rem,4vw,2.5rem)}.demo-environment-banner{color:#10211f;text-align:center;background:#b9f5d8;border-bottom:1px solid #7bc8aa;padding:.55rem 1rem;font-size:.78rem;font-weight:700}.auth-form{gap:1rem;margin-top:2rem;display:grid}.app-frame{min-height:100vh}.sidebar{z-index:20;color:#fff;background:var(--duty-primary);flex-direction:column;gap:2.4rem;width:15.5rem;padding:1.8rem 1.25rem;display:flex;position:fixed;inset:0 auto 0 0}.sidebar>img{width:8.5rem;height:auto;margin-left:.5rem}.sidebar nav{gap:.3rem;display:grid}.nav-link{color:#dfedeb;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:.8rem;width:100%;min-height:2.8rem;padding:.7rem .8rem;font-weight:650;display:flex}.nav-link:hover,.nav-link.is-active{color:#fff;background:#ffffff1a}.nav-link.is-active{box-shadow:inset 3px 0 0 var(--duty-accent)}.sidebar-footer{border-top:1px solid #ffffff29;margin-top:auto;padding:.85rem .55rem 0}.sidebar-footer .eyebrow{color:var(--duty-accent)}.sidebar-footer p{margin-bottom:.25rem}.logout{margin-top:.8rem;padding-inline:0}.app-content{min-height:100vh;margin-left:15.5rem}.topbar{z-index:18;min-height:var(--topbar-height);border-bottom:1px solid var(--duty-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f1e8eb;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem clamp(1.25rem,4vw,3.5rem);display:flex;position:sticky;top:0}.topbar p{margin:0}.location-picker{align-items:center;gap:.5rem;display:flex}.location-picker select{min-height:2.35rem;padding-block:.35rem}.location-picker button,.install-button{color:var(--duty-secondary);background:0 0;border:0;font-size:.82rem;font-weight:750}.page-container{padding:clamp(1.5rem,4vw,3.5rem);width:min(76rem,100%);margin:0 auto;padding-bottom:7rem}.page-width-detail{width:min(64rem,100%)}.page-width-workspace{width:min(100%,110rem)}.page-container:has(.workspace-wide){width:min(100%,110rem)}.workspace-wide{min-width:0}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;display:grid}.detail-grid>div{border:1px solid var(--duty-border);border-radius:var(--radius-nested);background:var(--duty-subtle);min-width:0;padding:1rem}.detail-grid dt{color:var(--duty-muted);margin-bottom:.25rem;font-size:.75rem;font-weight:700}.detail-grid dd{overflow-wrap:anywhere;margin:0;font-weight:700}.bottom-nav{display:none}.page-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;display:flex}.page-header>div{max-width:44rem}.page-header p:last-child{color:var(--duty-muted);margin-bottom:0}.status{white-space:nowrap;border-radius:999px;align-items:center;gap:.35rem;padding:.38rem .58rem;font-size:.73rem;font-weight:750;line-height:1;display:inline-flex}.status svg{width:.9rem;height:.9rem}.status-success{color:var(--success);background:var(--success-bg)}.status-warning{color:var(--warning);background:var(--warning-bg)}.status-danger{color:var(--danger);background:var(--danger-bg)}.status-info{color:var(--info);background:var(--info-bg)}.status-neutral{color:var(--duty-muted);background:var(--duty-subtle)}.task-list{gap:1rem;display:grid}.task-card{border:1px solid var(--duty-border);background:#fff;border-radius:20px;grid-template-columns:6.2rem 1fr;display:grid;overflow:hidden;box-shadow:0 8px 25px #10211f0a}.task-overdue{border-color:#e7bbb5}.task-time{color:var(--duty-primary);background:var(--duty-subtle);flex-direction:column;justify-content:center;align-items:center;gap:.2rem;padding:1.25rem .75rem;display:flex}.task-time strong{font-variant-numeric:tabular-nums;font-size:1.35rem}.task-time span{color:var(--duty-muted);font-size:.72rem}.task-main{padding:1.25rem}.task-main>p{color:var(--duty-muted)}.task-heading{justify-content:space-between;gap:1rem;display:flex}.task-heading h2{margin-bottom:.6rem}.task-assignment,.task-completion,.task-read-only{align-items:center;gap:.4rem;display:flex}.task-assignment svg,.task-completion svg{flex:none;width:1rem;height:1rem}.task-assignment{font-weight:700;color:var(--duty-primary)!important}.task-assignment.is-unstaffed{color:var(--warning)!important}.task-completion{font-weight:700;color:var(--success)!important}.task-read-only{background:var(--duty-subtle);border-radius:10px;width:fit-content;margin-top:.8rem;padding:.55rem .7rem;font-size:.76rem;font-weight:650;color:var(--duty-muted)!important}.task-actions{flex-wrap:wrap;align-items:flex-start;gap:.65rem;margin-top:1rem;display:flex}.photo-form{flex:100%;grid-template-columns:1fr auto;gap:.6rem;display:grid}.photo-form p{grid-column:1/-1}.file-control{border:1px dashed var(--duty-secondary);min-height:2.75rem;color:var(--duty-primary);background:var(--duty-subtle);border-radius:12px;flex-direction:row;grid-template:none;justify-content:center;align-items:center;gap:.5rem;display:flex;position:relative;overflow:hidden}.file-control input{opacity:0;cursor:pointer;position:absolute;inset:0}.skip-disclosure{color:var(--danger);align-self:center;font-size:.85rem;font-weight:700}.skip-disclosure form{background:var(--danger-bg);border:1px solid #efcbc6;border-radius:12px;gap:.7rem;min-width:min(24rem,70vw);margin-top:.8rem;padding:1rem;display:grid}.inline-note{align-items:center;gap:.5rem;display:flex;color:var(--warning)!important}.completed-section{gap:.75rem;margin-top:2rem;display:grid}.completed-section>h2{margin:.5rem 0}.completed-section .task-card{opacity:.78}.completed-task-list .task-card{opacity:.82}.today-sections{gap:2.25rem;display:grid}.today-section{gap:1rem;display:grid}.today-section .empty-state{padding-block:2.5rem}.today-backlog{background:#fff6f48c;border:1px solid #e7bbb5;border-radius:20px;padding:1rem}.today-backlog .task-card{box-shadow:none}.today-closed{border:1px solid var(--duty-border);background:#fff;border-radius:16px}.today-closed>summary{color:var(--duty-primary);cursor:pointer;padding:.85rem 1rem;font-size:.82rem;font-weight:750}.today-closed[open]>summary{border-bottom:1px solid var(--duty-border)}.today-closed .task-list{padding:1rem}.today-closed .task-card{opacity:.82;box-shadow:none}.empty-state{border:1px dashed var(--duty-border);text-align:center;background:#ffffff80;border-radius:24px;justify-items:center;padding:4rem 1.5rem;display:grid}.empty-state>svg{width:2.8rem;height:2.8rem;color:var(--success);background:var(--success-bg);border-radius:50%;margin-bottom:1rem;padding:.65rem}.empty-state p{max-width:30rem;color:var(--duty-muted)}.filter-bar{border:1px solid var(--duty-border);background:#fff;border-radius:16px;grid-template-columns:repeat(3,minmax(9rem,1fr)) auto;align-items:end;gap:.8rem;margin-bottom:1.2rem;padding:1rem;display:grid}.kpi-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem;display:grid}.kpi-card{border:1px solid var(--duty-border);background:#fff;border-radius:18px;align-items:center;gap:1rem;padding:1.2rem;display:flex}.kpi-card>span{border-radius:12px;place-items:center;width:2.7rem;height:2.7rem;display:grid}.kpi-card p{color:var(--duty-muted);margin:0;font-size:.82rem;font-weight:650}.kpi-card strong{font-variant-numeric:tabular-nums;font-size:1.85rem}.kpi-info>span{color:var(--info);background:var(--info-bg)}.kpi-success>span{color:var(--success);background:var(--success-bg)}.kpi-warning>span{color:var(--warning);background:var(--warning-bg)}.kpi-danger>span{color:var(--danger);background:var(--danger-bg)}.widget-dashboard{margin-bottom:1rem}.widget-toolbar{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:.8rem;display:flex}.widget-toolbar p{color:var(--duty-muted);margin-bottom:0;font-size:.82rem}.widget-toolbar .eyebrow{color:var(--duty-secondary);margin-bottom:.15rem}.widget-settings{z-index:8;position:relative}.widget-settings>summary{border:1px solid var(--duty-border);min-height:2.55rem;color:var(--duty-primary);background:#fff;border-radius:12px;align-items:center;padding:.55rem .8rem;font-size:.82rem;font-weight:750;list-style:none;display:inline-flex}.widget-settings>summary::-webkit-details-marker{display:none}.widget-settings>div{border:1px solid var(--duty-border);width:min(19rem,82vw);box-shadow:var(--shadow);background:#fff;border-radius:14px;gap:.25rem;padding:.8rem;display:grid;position:absolute;top:calc(100% + .45rem);right:0}.widget-settings label{color:var(--duty-ink);flex-direction:row;grid-template:none;align-items:center;gap:.55rem;padding:.45rem;display:flex}.widget-settings input{width:1rem;height:1rem;min-height:1rem;accent-color:var(--duty-primary);padding:0}.widget-settings .text-button{justify-self:start;margin-top:.35rem}.widget-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.widget-card{cursor:grab;position:relative}.widget-card:active{cursor:grabbing}.widget-card-actions{opacity:0;gap:.15rem;transition:opacity .15s;display:flex;position:absolute;inset:.35rem .35rem auto auto}.widget-card:hover .widget-card-actions,.widget-card:focus-within .widget-card-actions{opacity:1}.widget-card-actions button{width:1.75rem;height:1.75rem;color:var(--duty-primary);background:var(--duty-subtle);border:0;border-radius:7px;font-weight:750}.widget-card-actions button:disabled{opacity:.3;cursor:default}.dashboard-grid{grid-template-columns:1.1fr .9fr;gap:1rem;display:grid}.panel,.creation-panel{border:1px solid var(--duty-border);background:#fff;border-radius:20px;width:100%;min-width:0;max-width:100%;padding:1.25rem;box-shadow:0 8px 30px #10211f0a}.panel-heading{justify-content:space-between;align-items:flex-start;gap:1rem;min-width:0;margin-bottom:1rem;display:flex}.panel-heading>div{min-width:0}.panel-heading p:last-child{color:var(--duty-muted);margin-bottom:0}.panel-heading .count-pill{flex:none}.panel-heading h2{margin-bottom:0}:is(.task-card,.kpi-card,.template-card,.notification-card,.resource-card,.person-card,.shift-row,.control-shift,.evidence-card){min-width:0;max-width:100%}:is(.task-card,.kpi-card,.template-card,.notification-card,.resource-card,.person-card,.shift-row,.control-shift,.evidence-card)>*{min-width:0}.breakdown-list{gap:.2rem;display:grid}.breakdown-list>div{border-bottom:1px solid var(--duty-border);grid-template-columns:1fr auto;gap:.1rem .7rem;padding:.85rem 0;display:grid}.breakdown-list small{grid-column:1/-1}.timeline{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.timeline li{grid-template-columns:.55rem 1fr;gap:.65rem;display:grid}.timeline li>span{background:var(--duty-secondary);border-radius:50%;width:.55rem;height:.55rem;margin-top:.35rem}.timeline p{color:var(--duty-muted);margin:.1rem 0 0;font-size:.82rem}.control-filter-bar{flex-wrap:wrap;align-items:end;gap:.75rem;margin-bottom:1rem;display:flex}.control-filter-bar>label{flex:10rem;min-width:10rem}.control-filter-bar>label:nth-of-type(2){flex-basis:13rem}.control-filter-bar .button{flex:none}.control-overview{gap:1rem;display:grid}.control-hero-grid{grid-template-columns:minmax(0,1fr) minmax(15rem,.36fr);gap:1rem;display:grid}.control-summary-hero{color:#fff;background:var(--duty-primary);border-radius:22px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;min-width:0;padding:clamp(1.25rem,3vw,2rem);display:grid;box-shadow:0 16px 38px #0b3b3824}.control-summary-hero .eyebrow{color:var(--duty-accent)}.control-summary-hero h2{max-width:35rem;margin-bottom:.45rem;font-size:clamp(1.35rem,2.6vw,1.8rem)}.control-summary-hero p:last-child{color:#dbe9e5;margin:0;font-size:.88rem}.control-completion-ring{--control-completion:0%;background:conic-gradient(var(--duty-accent) 0 var(--control-completion),#ffffff29 var(--control-completion) 100%);border-radius:50%;flex:none;place-items:center;width:6.2rem;height:6.2rem;display:grid}.control-completion-ring:before{background:var(--duty-primary);content:"";border-radius:50%;grid-area:1/1;width:4.65rem;height:4.65rem}.control-completion-ring span{z-index:1;font-variant-numeric:tabular-nums;grid-area:1/1;font-size:1.3rem;font-weight:780}.control-attention-metrics{gap:.6rem;display:grid}.control-attention-metric{border:1px solid var(--duty-border);background:#fff;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;min-width:0;padding:.8rem .9rem;display:grid}.control-attention-metric>span{width:2.15rem;height:2.15rem;color:var(--warning);background:var(--warning-bg);border-radius:10px;place-items:center;display:grid}.control-attention-metric.is-danger>span{color:var(--danger);background:var(--danger-bg)}.control-attention-metric p{color:var(--duty-muted);margin:0;font-size:.75rem;font-weight:700}.control-attention-metric strong{color:var(--duty-primary);font-variant-numeric:tabular-nums;font-size:1.35rem}.control-attention-list{display:grid}.control-attention-row{border-top:1px solid var(--duty-border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;min-width:0;padding:.85rem 0;display:grid}.control-attention-row:first-child{border-top:0;padding-top:0}.control-attention-row:last-child{padding-bottom:0}.control-attention-row>div{min-width:0}.control-attention-row h3{overflow-wrap:anywhere;margin-bottom:.15rem}.control-attention-row p{color:var(--duty-muted);margin:0;font-size:.76rem}.control-attention-row>.button{white-space:nowrap;min-height:2.5rem;padding:.55rem .7rem;font-size:.75rem}.control-overdue-list{display:grid}.control-overdue-card{border-top:1px solid var(--duty-border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;min-width:0;padding:1rem 0;display:grid}.control-overdue-card:first-child{border-top:0;padding-top:0}.control-overdue-card:last-child{padding-bottom:0}.control-overdue-copy{min-width:0}.control-overdue-copy h3{overflow-wrap:anywhere;margin-bottom:.15rem}.control-overdue-copy p,.control-queue-panel .panel-heading p:last-child{color:var(--duty-muted);margin:0;font-size:.76rem}.control-overdue-details{grid-column:2/-1;min-width:0}.control-overdue-details>summary{color:var(--duty-primary);cursor:pointer;align-items:center;gap:.45rem;font-size:.78rem;font-weight:750;list-style:none;display:inline-flex}.control-overdue-details>summary::-webkit-details-marker{display:none}.control-overdue-details>summary:before{content:"";border-bottom:2px solid;border-right:2px solid;width:.42rem;height:.42rem;transition:transform .18s;transform:rotate(-45deg)}.control-overdue-details[open]>summary:before{transform:rotate(45deg)}.control-overdue-expanded{border:1px solid var(--duty-border);border-radius:var(--radius-nested);background:var(--duty-subtle);gap:.85rem;margin-top:.75rem;padding:.85rem;display:grid}.control-overdue-participants{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.control-overdue-participants li{align-items:center;gap:.65rem;min-width:0;display:flex}.control-overdue-participants li>div{min-width:0;display:grid}.control-overdue-participants strong{overflow-wrap:anywhere;font-size:.82rem}.control-overdue-participants li span{color:var(--duty-muted);font-size:.74rem}.control-participant-status{border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;display:grid}.control-participant-status svg{width:1rem;height:1rem}.control-participant-status.is-completed{color:var(--success);background:var(--success-bg)}.control-participant-status.is-to_complete{color:var(--danger);background:var(--danger-bg)}.control-participant-status.is-skipped{color:var(--warning);background:var(--warning-bg)}.control-reminder-panel{border-top:1px solid var(--duty-border);justify-content:space-between;align-items:center;gap:1rem;padding-top:.85rem;display:flex}.control-reminder-panel>div{min-width:0}.control-reminder-panel strong{font-size:.85rem}.control-reminder-panel p{color:var(--duty-muted);margin:.12rem 0 0;font-size:.75rem}.control-reminder-panel form{flex:none}.control-reminder-cooldown{color:var(--duty-muted);font-weight:650}.control-attention-icon{width:2.6rem;height:2.6rem;color:var(--warning);background:var(--warning-bg);border-radius:11px;place-items:center;display:grid}.control-attention-icon.is-danger{color:var(--danger);background:var(--danger-bg)}.control-command-board{padding:0;overflow:hidden}.control-command-heading{justify-content:space-between;align-items:end;gap:2rem;padding:1.25rem 1.35rem 1rem;display:flex}.control-command-heading h2{margin-bottom:0}.control-command-heading>p{max-width:25rem;color:var(--duty-muted);text-align:right;margin:0;font-size:.78rem}.control-signal-strip{border-block:1px solid var(--duty-border);background:var(--duty-subtle);grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));display:grid}.control-signal{border-right:1px solid var(--duty-border);grid-template-rows:auto 1fr;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.8rem;min-width:0;min-height:8.4rem;padding:1.05rem;transition:background .18s,box-shadow .18s;display:grid}.control-signal:last-child{border-right:0}.control-signal:hover{background:var(--duty-surface);box-shadow:inset 0 -3px 0 var(--duty-secondary)}.control-signal-icon{width:2.45rem;height:2.45rem;color:var(--duty-muted);background:#fff;border-radius:11px;place-items:center;display:grid}.control-signal.has-value .control-signal-icon{color:var(--warning);background:var(--warning-bg)}.control-signal.has-value.is-danger .control-signal-icon{color:var(--danger);background:var(--danger-bg)}.control-signal>div{gap:.02rem;display:grid}.control-signal strong{color:var(--duty-primary);font-variant-numeric:tabular-nums;font-size:1.8rem;line-height:1}.control-signal.has-value.is-danger strong{color:var(--danger)}.control-signal>div span{color:var(--duty-ink);font-size:.78rem;font-weight:760}.control-signal small{color:var(--duty-muted);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;align-self:end;font-size:.68rem;overflow:hidden}.control-chart-section{padding:1.3rem 1.35rem 1.15rem}.control-unit-chart{scrollbar-width:thin;grid-auto-columns:minmax(8.25rem,1fr);grid-auto-flow:column;gap:clamp(.6rem,2vw,1.3rem);min-width:0;padding:.5rem .1rem .8rem;display:grid;overflow-x:auto}.control-unit-column{text-align:center;grid-template-rows:auto 10rem auto;justify-items:center;gap:.48rem;min-width:0;display:grid}.control-unit-column>strong{color:var(--duty-primary);font-variant-numeric:tabular-nums;font-size:.78rem}.control-unit-bar{background:linear-gradient(to top,var(--duty-subtle),#eef2ed);width:clamp(2.4rem,4vw,3.6rem);height:10rem;box-shadow:inset 0 0 0 1px var(--duty-border);border-radius:12px 12px 5px 5px;align-items:end;display:flex;overflow:hidden}.control-unit-bar>span{background:var(--duty-secondary);border-radius:10px 10px 4px 4px;width:100%;min-height:.2rem;transition:height .3s}.control-unit-bar>span.is-warning{background:var(--warning)}.control-unit-caption{gap:.15rem;width:100%;min-width:0;display:grid}.control-unit-caption>span{min-height:2.4em;color:var(--duty-ink);overflow-wrap:anywhere;justify-content:center;align-items:start;font-size:.76rem;font-weight:760;line-height:1.2;display:flex}.control-unit-caption small{white-space:normal;font-size:.62rem;line-height:1.3}.control-unit-caption .control-unit-location{color:var(--duty-secondary);font-size:.66rem;font-weight:700}.control-history{border-top:1px solid var(--duty-border);margin-top:1.2rem;padding-top:.8rem}.control-history>summary{min-height:2.75rem;color:var(--duty-primary);justify-content:space-between;align-items:center;gap:.7rem;font-size:.78rem;font-weight:750;list-style:none;display:flex}.control-history>summary::-webkit-details-marker{display:none}.control-history>summary span{align-items:center;gap:.45rem;display:flex}.control-history>summary strong{color:var(--duty-muted);font-size:.7rem}.control-history .timeline{margin-top:.8rem}.control-queue-panel,.evidence-panel{margin-top:1rem}.evidence-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.evidence-card{border:1px solid var(--duty-border);border-radius:16px;grid-template-columns:9rem 1fr;display:grid;overflow:hidden}.evidence-card>img{object-fit:cover;background:var(--duty-subtle);width:100%;height:100%;min-height:11rem}.evidence-card>div{padding:1rem}.evidence-actions{flex-wrap:wrap;gap:.55rem;margin-top:1rem;display:flex}.evidence-actions details form{gap:.5rem;margin-top:.5rem;display:grid}.unstaffed-panel .control-shift{grid-template-columns:minmax(12rem,1fr) auto minmax(18rem,.75fr);align-items:center}.unstaffed-panel .inline-form{justify-content:flex-end;margin-top:0}.creation-panel{margin-bottom:1rem;padding:0;overflow:hidden}.creation-panel>summary{align-items:center;gap:.65rem;min-height:4rem;padding:1rem 1.25rem;font-size:1rem;font-weight:750;list-style:none;display:flex}.creation-panel>summary::-webkit-details-marker{display:none}.creation-panel>summary:after{border-right:2px solid var(--duty-secondary);border-bottom:2px solid var(--duty-secondary);content:"";width:.55rem;height:.55rem;margin-left:auto;transition:transform .18s;transform:rotate(45deg)}.creation-panel[open]>summary{border-bottom:1px solid var(--duty-border);background:var(--duty-subtle)}.creation-panel[open]>summary:after{transform:rotate(225deg)}.editor-form{display:grid}.form-section{border-bottom:1px solid var(--duty-border);grid-template-columns:minmax(12rem,.38fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);padding:clamp(1.25rem,3vw,2rem);display:grid}.form-section-heading h3{margin-bottom:.35rem;font-size:1.06rem}.form-section-heading p:last-child{max-width:25rem;color:var(--duty-muted);margin:0;font-size:.84rem}.form-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:1rem;display:grid}.form-stack{align-content:start;gap:1.2rem;display:grid}.search-picker{border:0;min-width:0;margin:0;padding:0}.search-picker>legend{color:var(--duty-muted);margin-bottom:.5rem;padding:0;font-size:.78rem;font-weight:700}.search-picker-input{margin-bottom:.75rem}.search-picker-selected{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.search-picker-selected button{border:1px solid var(--duty-border);min-height:2.25rem;color:var(--duty-primary);background:var(--duty-subtle);border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .65rem;font-size:.78rem;font-weight:700;display:inline-flex}.search-picker-selected button span{font-size:1rem}.search-picker-results{border:1px solid var(--duty-border);border-radius:var(--radius-control);background:#fff;max-height:20rem;overflow:auto}.search-picker-summary{z-index:1;border-bottom:1px solid var(--duty-border);background:var(--duty-subtle);justify-content:space-between;gap:.75rem;padding:.65rem .75rem;font-size:.75rem;display:flex;position:sticky;top:0}.search-picker-results>label{border-bottom:1px solid var(--duty-border);min-height:3.25rem;color:var(--duty-ink);grid-template-columns:auto 1fr;align-items:center;gap:.75rem;padding:.65rem .75rem;display:grid}.search-picker-results>label:last-of-type{border-bottom:0}.search-picker-results input{width:1.1rem;height:1.1rem;min-height:1.1rem;accent-color:var(--duty-primary);padding:0}.search-picker-results strong,.search-picker-results small{display:block}.responsibility-form-stack{min-width:0}.activity-skill-picker{border:0;min-width:0;margin:0;padding:0}.activity-skill-picker>legend{color:var(--duty-muted);margin-bottom:.2rem;padding:0;font-size:.78rem;font-weight:700}.activity-skill-intro{color:var(--duty-muted);margin:0 0 .75rem;font-size:.74rem}.activity-skill-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem;margin-bottom:.65rem;display:grid}.activity-skill-toolbar label{gap:.3rem;min-width:0;display:grid}.activity-skill-toolbar label>span{color:var(--duty-muted);font-size:.7rem;font-weight:700}.activity-skill-toolbar input{width:100%;min-width:0}.activity-skill-count{border:1px solid var(--duty-border);border-radius:var(--radius-control);min-height:2.75rem;color:var(--duty-muted);background:var(--duty-subtle);white-space:nowrap;align-items:center;gap:.3rem;padding:.55rem .75rem;font-size:.72rem;display:inline-flex}.activity-skill-count strong{color:var(--duty-primary);font-variant-numeric:tabular-nums;font-size:.9rem}.activity-skill-results{border:1px solid var(--duty-border);border-radius:var(--radius-control);background:var(--duty-subtle);scrollbar-gutter:stable;max-height:22rem;overflow:auto}.activity-skill-summary{z-index:1;border-bottom:1px solid var(--duty-border);background:var(--duty-subtle);justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;font-size:.74rem;display:flex;position:sticky;top:0}.activity-skill-summary span{color:var(--duty-primary);font-weight:750}.activity-skill-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;padding:.6rem;display:grid}.activity-skill-option{border:1px solid var(--duty-border);min-width:0;min-height:5.6rem;color:var(--duty-ink);background:#fff;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.65rem;padding:.75rem;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.activity-skill-option:hover{border-color:#a8b8b2}.activity-skill-option:has(input:checked){border-color:var(--duty-secondary);box-shadow:0 0 0 1px var(--duty-secondary);background:#f1faf6}.activity-skill-option input{width:1rem;height:1rem;min-height:1rem;accent-color:var(--duty-primary);margin:.15rem 0 0;padding:0}.activity-skill-option>span{align-content:start;gap:.12rem;min-width:0;display:grid}.activity-skill-option strong,.activity-skill-option small{overflow-wrap:anywhere}.activity-skill-option strong{font-size:.82rem;line-height:1.35}.activity-skill-option small{font-size:.7rem;font-weight:550}.activity-skill-option .activity-skill-status{width:max-content;color:var(--warning);background:var(--warning-bg);border-radius:999px;margin:.1rem 0;padding:.15rem .4rem;font-weight:750}.activity-skill-empty{color:var(--duty-muted);text-align:center;margin:0;padding:1rem;font-size:.8rem}.span-2{grid-column:1/-1}.choice-field{border:0;min-width:0;margin:0;padding:0}.choice-field>legend{color:var(--duty-muted);margin-bottom:.5rem;padding:0;font-size:.78rem;font-weight:700}.choice-grid{grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr));gap:.65rem;display:grid}.choice-grid-compact{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr))}.choice-card{border:1px solid var(--duty-border);min-height:4.7rem;color:var(--duty-ink);background:#fff;border-radius:12px;flex-direction:row;grid-template:none;align-items:flex-start;gap:.65rem;padding:.85rem;transition:border-color .16s,background .16s,box-shadow .16s;display:flex;position:relative}.choice-card:hover{background:var(--duty-subtle);border-color:#a8b8b2}.choice-card:has(input:checked){border-color:var(--duty-secondary);box-shadow:0 0 0 1px var(--duty-secondary);background:#f1faf6}.choice-card input{width:1rem;height:1rem;min-height:1rem;accent-color:var(--duty-primary);flex:none;margin:.15rem 0 0;padding:0}.choice-card span{gap:.15rem;display:grid}.choice-card strong{font-size:.84rem;line-height:1.35}.choice-card small{font-size:.72rem;font-weight:550}.choice-grid-compact .choice-card{align-items:center;min-height:3rem;padding:.68rem .75rem}.choice-grid-compact .choice-card input{margin-top:0}.choice-empty{border:1px dashed var(--duty-border);color:var(--duty-muted);border-radius:12px;margin:0;padding:.9rem;font-size:.82rem}.select-field{max-width:27rem}.toggle-card{border:1px solid var(--duty-border);color:var(--duty-ink);background:var(--duty-subtle);border-radius:12px;flex-direction:row;grid-template:none;align-items:flex-start;gap:.7rem;padding:.9rem;display:flex}.toggle-card input{width:1rem;height:1rem;min-height:1rem;accent-color:var(--duty-primary);flex:none;margin:.2rem 0 0;padding:0}.toggle-card span{gap:.15rem;display:grid}.toggle-card small{font-weight:550}.form-footer{background:var(--duty-subtle);justify-content:flex-end;align-items:center;gap:1rem;padding:1.2rem clamp(1.25rem,3vw,2rem);display:flex}.form-footer p{color:var(--duty-muted);margin:0 auto 0 0;font-size:.8rem}.template-list,.user-list{gap:.7rem;min-width:0;display:grid}.template-card{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;min-width:0;padding:1rem;display:grid}.template-card>div{min-width:0}.template-card h3{margin:.6rem 0 .25rem}.template-card p{color:var(--duty-muted);margin-bottom:.25rem}.template-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;min-width:0;display:flex}.template-actions details>summary,.user-actions details>summary{border:1px solid var(--duty-border);min-height:2.75rem;color:var(--duty-primary);background:#fff;border-radius:12px;align-items:center;padding:.68rem 1rem;font-weight:700;list-style:none;display:inline-flex}.template-actions details>summary::-webkit-details-marker{display:none}.user-actions details>summary::-webkit-details-marker{display:none}.template-actions details[open]{width:min(58rem,72vw)}.template-actions details .editor-form{border:1px solid var(--duty-border);text-align:left;background:#fff;border-radius:16px;margin-top:.75rem;overflow:hidden}.user-card{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:16px;grid-template-columns:2.8rem 1fr auto auto;align-items:center;gap:1rem;padding:1rem;display:grid}.avatar{width:2.8rem;height:2.8rem;color:var(--duty-primary);background:var(--duty-accent);border-radius:50%;place-items:center;font-weight:760;display:grid}.user-identity h3,.user-identity p{margin-bottom:.1rem}.user-identity p{color:var(--duty-muted);font-size:.86rem}.user-actions{gap:.5rem;display:flex}.user-actions details form{gap:.5rem;margin-top:.5rem;display:grid}.notification-list{gap:.75rem;display:grid}.notification-groups{gap:1.4rem;display:grid}.notification-group{gap:.85rem;display:grid}.notification-group .panel-heading{margin-bottom:0}.notification-card{border:1px solid var(--duty-border);border-left:4px solid var(--duty-secondary);background:#fff;border-radius:16px;grid-template-columns:2.8rem minmax(0,1fr) auto;align-items:center;gap:1rem;min-width:0;padding:1rem;display:grid}.notification-card>div,.notification-card form{min-width:0}.notification-card.is-read{opacity:.72;border-left-color:var(--duty-border)}.notification-card h2,.notification-card h3{margin-bottom:.25rem}.notification-card p{color:var(--duty-muted);margin-bottom:.25rem}.notification-icon{width:2.8rem;height:2.8rem;color:var(--info);background:var(--info-bg);border-radius:12px;place-items:center;display:grid}.severity-medium,.severity-high{color:var(--warning);background:var(--warning-bg)}.push-settings{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:16px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1rem;display:grid}.push-settings-icon{width:2.8rem;height:2.8rem;color:var(--duty-primary);background:var(--duty-accent);border-radius:12px;place-items:center;display:grid}.push-settings-icon svg{width:1.35rem;height:1.35rem}.push-settings-copy{min-width:0}.push-settings-copy h2{margin:.15rem 0 .25rem;font-size:1rem}.push-settings-copy p{color:var(--duty-muted);margin:0;font-size:.84rem}.push-settings-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.section-tabs{z-index:5;border:1px solid var(--duty-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-radius:14px;gap:.3rem;margin:-1rem 0 1.25rem;padding:.35rem;display:inline-flex;position:sticky;top:.75rem}.section-tabs a{color:var(--duty-primary);border-radius:10px;padding:.6rem .85rem;font-size:.82rem;font-weight:750}.section-tabs a:hover{background:var(--duty-subtle)}.structure-section{margin-bottom:1rem;scroll-margin-top:6rem}.resource-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.resource-card{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:16px;min-width:0;padding:1rem}.resource-card h3{margin:.7rem 0 .25rem}.resource-card p{color:var(--duty-muted)}.resource-card-wide{grid-column:span 2}.location-resource-grid{grid-template-columns:minmax(0,1fr)}.location-resource-grid .resource-card-wide{grid-column:1}.resource-card details{margin-top:.8rem}:is(.resource-card details,.inline-creation,.person-actions details,.shift-row details,.control-shift details)>summary{border:1px solid var(--duty-border);min-height:2.5rem;color:var(--duty-primary);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:.5rem;padding:.5rem .7rem;font-size:.8rem;font-weight:750;list-style:none;display:inline-flex}:is(.resource-card details,.inline-creation,.person-actions details,.shift-row details,.control-shift details)>summary::-webkit-details-marker{display:none}:is(.resource-card details,.inline-creation,.person-actions details,.shift-row details,.control-shift details)>summary:before{content:"";border-bottom:2px solid;border-right:2px solid;flex:none;width:.42rem;height:.42rem;transition:transform .18s;transform:rotate(-45deg)}:is(.resource-card details,.inline-creation,.person-actions details,.shift-row details,.control-shift details)[open]>summary:before{transform:rotate(45deg)}.inline-creation{border:1px dashed var(--duty-border);border-radius:16px;min-width:0;margin-top:1rem;padding:1rem}.inline-creation[open]>summary{margin-bottom:1rem}.compact-form{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));align-items:end;gap:.75rem;display:grid}.compact-form .button{align-self:end}.compact-checks{border:0;flex-wrap:wrap;gap:.5rem;padding:0;display:flex}.compact-checks legend{width:100%;color:var(--duty-muted);margin-bottom:.3rem;font-size:.78rem;font-weight:700}.compact-checks label,.inline-check{flex-direction:row;grid-template:none;align-items:center;gap:.4rem;display:flex}.compact-checks input,.inline-check input{width:1rem;height:1rem;min-height:1rem;accent-color:var(--duty-primary);padding:0}.location-units{border-top:1px solid var(--duty-border);gap:.75rem;min-width:0;margin-top:1rem;padding-top:1rem;display:grid}.location-units-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.location-units-heading h4{color:var(--duty-primary);margin:0 0 .15rem;font-size:.88rem}.location-units-heading p{color:var(--duty-muted);margin:0;font-size:.75rem}.location-units-heading .count-pill{min-height:1.7rem;padding:.35rem .62rem;font-size:.72rem}.location-unit-list{gap:.55rem;display:grid}.location-unit-item{border:1px solid var(--duty-border);background:#fff;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;min-width:0;padding:.75rem;display:grid}.location-unit-copy{min-width:0}.location-unit-copy>div{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.location-unit-copy p{overflow-wrap:anywhere;color:var(--duty-muted);margin:.18rem 0 0;font-size:.75rem}.location-unit-copy small{margin-top:.15rem;font-size:.68rem;display:block}.location-unit-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:.4rem;min-width:0;display:flex}.location-unit-actions details>summary{border:1px solid var(--duty-border);min-height:2.75rem;color:var(--duty-primary);background:#fff;border-radius:12px;align-items:center;padding:.68rem 1rem;font-size:.78rem;font-weight:750;list-style:none;display:inline-flex}.location-unit-actions details>summary::-webkit-details-marker{display:none}.location-unit-actions details[open]{flex:1 0 100%;width:min(34rem,100%)}.location-unit-edit{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:12px;min-width:min(34rem,100%);margin-top:.55rem;padding:.75rem}.form-help{color:var(--duty-muted);margin:0;font-size:.7rem}.location-unit-empty{border:1px dashed var(--duty-border);color:var(--duty-muted);background:#fff;border-radius:12px;margin:0;padding:.8rem;font-size:.75rem}.location-unit-create-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;display:grid}.location-unit-create-actions>.inline-creation{background:#fff;min-width:0;margin-top:0;padding:.75rem}.available-unit-list{gap:.45rem;display:grid}.available-unit-list>div{border-top:1px solid var(--duty-border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;min-width:0;padding-top:.5rem;display:grid}.available-unit-list>div:first-child{border-top:0;padding-top:0}.available-unit-list>div>div{min-width:0;display:grid}.available-unit-list strong{overflow-wrap:anywhere;font-size:.78rem}.available-unit-list span{color:var(--duty-muted);font-size:.68rem}.available-unit-list .button{min-height:2.25rem;padding:.4rem .7rem;font-size:.72rem}.calendar-editor{border:1px solid var(--duty-border);background:#fff;border-radius:16px;margin-top:1rem;overflow:hidden}.calendar-days{display:grid}.calendar-day{border-bottom:1px solid var(--duty-border);padding:.8rem 1rem}.calendar-day>div:first-child{justify-content:space-between;align-items:center;display:flex}.period-row{grid-template-columns:7rem auto 7rem minmax(7rem,1fr) 2rem;align-items:center;gap:.5rem;margin-top:.55rem;display:grid}.period-row input[type=time]{min-height:2.4rem;padding:.35rem .5rem}.text-button,.icon-button{color:var(--duty-secondary);background:0 0;border:0;font-weight:750}.icon-button{width:2rem;height:2rem;color:var(--danger);background:var(--danger-bg);border-radius:8px;font-size:1.2rem}.subsection-heading{justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.subsection-heading p{color:var(--duty-muted);margin:0}.exception-list{gap:.6rem;padding:0 1rem 1rem;display:grid}.exception-card{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:12px;grid-template-columns:1fr 1fr 1.5fr 2rem;align-items:end;gap:.6rem;padding:.75rem;display:grid}.exception-periods{grid-column:1/-1}.person-card{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:16px;grid-template-columns:2.8rem minmax(11rem,1.2fr) minmax(9rem,1fr) minmax(10rem,1.2fr);grid-template-areas:"avatar identity access operativity"".visual visual visual"".actions actions actions";align-items:start;gap:1rem;min-width:0;padding:1rem;display:grid}.person-card .avatar{grid-area:avatar}.person-card .user-identity{grid-area:identity}.person-access{grid-area:access}.person-operativity{grid-area:operativity}.person-dimension{min-width:0}.person-dimension p,.person-dimension ul{margin:0}.person-dimension ul{color:var(--duty-muted);padding-left:1rem;font-size:.82rem}.access-summary{align-content:start;gap:.18rem;display:grid}.access-summary strong,.access-summary small{overflow-wrap:anywhere;display:block}.person-visual{border-top:1px solid var(--duty-border);grid-area:visual;grid-template-columns:minmax(9rem,.28fr) minmax(0,1fr);align-items:start;gap:1rem;padding-top:.85rem;display:grid}.person-dimension-heading{min-width:0}.person-dimension-heading .eyebrow{margin-bottom:.15rem}.person-dimension-heading small{display:block}.person-actions{border-top:1px solid var(--duty-border);flex-wrap:wrap;grid-area:actions;align-items:flex-start;gap:.55rem;min-width:0;padding-top:.75rem;display:flex}.operational-disclosure{min-width:0;max-width:100%}.operational-disclosure[open]{flex-basis:100%;width:100%}.operational-grid{border:1px solid var(--duty-border);background:#fff;border-radius:14px;gap:.8rem;width:100%;min-width:0;max-width:100%;margin-top:.7rem;padding:1rem;display:grid}.operational-grid fieldset{min-width:0}.operational-grid fieldset,.assignment-editor fieldset{border:1px solid var(--duty-border);border-radius:12px;padding:.7rem}.operational-grid legend,.assignment-editor legend{color:var(--duty-primary);padding:0 .3rem;font-size:.78rem;font-weight:750}.operational-grid label,.assignment-editor label{flex-direction:row;grid-template:none;align-items:center;gap:.45rem;padding:.3rem;display:flex}.operational-grid input,.assignment-editor input{width:1rem;height:1rem;min-height:1rem;padding:0}.location-staffing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;min-width:0;display:grid}.location-staffing-card{background:var(--duty-subtle);align-content:start}.location-staffing-card.is-enabled{border-color:var(--duty-secondary);background:#fff}.location-staffing-toggle{color:var(--duty-ink);background:#fff;border-radius:10px;align-items:flex-start!important;padding:.65rem!important}.location-staffing-toggle>span{gap:.1rem;min-width:0;display:grid}.location-staffing-toggle small{font-weight:550}.location-unit-picker{border-top:1px solid var(--duty-border);gap:.15rem;margin-top:.45rem;padding-top:.55rem;display:grid}.location-unit-heading{color:var(--duty-muted);justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.2rem;font-size:.72rem;font-weight:700;display:flex}.location-unit-heading .text-button{padding:.25rem;font-size:.7rem}.location-staffing-warning{color:var(--warning);background:var(--warning-bg);border-radius:8px;margin:.5rem 0 0;padding:.55rem;font-size:.72rem}.operational-save-row{border-top:1px solid var(--duty-border);justify-content:space-between;align-items:center;gap:1rem;padding-top:.8rem;display:flex}.operational-save-row p{color:var(--duty-muted);margin:0;font-size:.75rem}.compact-empty{margin:0}.inline-form{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.inline-form input,.inline-form select{width:auto;min-width:11rem}.chip-list{flex-wrap:wrap;gap:.45rem;display:flex}.chip{color:var(--duty-primary);background:var(--duty-accent);border-radius:999px;padding:.42rem .7rem;font-size:.78rem;font-weight:750}.skill-catalog-filters{margin-bottom:1rem}.skill-catalog{margin-top:1rem}.skill-catalog-heading{border-bottom:1px solid var(--duty-border);background:var(--duty-subtle);justify-content:space-between;align-items:flex-end;gap:1rem;padding:1.15rem 1.25rem;display:flex}.skill-catalog-heading h2{margin:0;font-size:1.1rem}.skill-catalog-heading p:last-child{max-width:24rem;color:var(--duty-muted);text-align:right;margin:0;font-size:.78rem}.skill-catalog-list{display:grid}.skill-catalog-item{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"copy status action""editor editor editor";align-items:center;gap:.8rem 1rem;min-width:0;padding:1rem 1.25rem;display:grid}.skill-catalog-item+.skill-catalog-item{border-top:1px solid var(--duty-border)}.skill-catalog-copy{grid-area:copy;min-width:0}.skill-catalog-copy h3{overflow-wrap:anywhere;margin:0 0 .18rem}.skill-catalog-copy p{color:var(--duty-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.82rem;display:-webkit-box;overflow:hidden}.skill-catalog-status{grid-area:status}.skill-catalog-editor{grid-area:action;justify-self:end}.skill-catalog-editor>summary{border:1px solid var(--duty-border);border-radius:var(--radius-control);min-height:2.6rem;color:var(--duty-primary);background:#fff;justify-content:center;align-items:center;padding:.55rem .8rem;font-size:.78rem;font-weight:750;list-style:none;display:inline-flex}.skill-catalog-editor>summary::-webkit-details-marker{display:none}.skill-catalog-editor>summary:hover,.skill-catalog-editor[open]>summary{border-color:var(--duty-secondary);background:var(--duty-subtle)}.skill-editor-open{display:none}.skill-catalog-editor[open]{border-top:1px solid var(--duty-border);grid-area:editor;justify-self:stretch;width:100%;padding-top:1rem}.skill-catalog-editor[open]>summary{margin-left:auto}.skill-catalog-editor[open] .skill-editor-closed{display:none}.skill-catalog-editor[open] .skill-editor-open{display:inline}.skill-edit-form{border:1px solid var(--duty-border);border-radius:var(--radius-nested);background:var(--duty-subtle);grid-template-columns:minmax(0,1fr) minmax(10rem,.28fr);gap:.85rem;margin-top:.8rem;padding:1rem;display:grid}.skill-edit-description,.skill-edit-footer{grid-column:1/-1}.skill-edit-footer{border-top:1px solid var(--duty-border);justify-content:space-between;align-items:center;gap:1rem;padding-top:.85rem;display:flex}.skill-edit-footer p,.skill-create-footer p{color:var(--duty-muted);margin:0;font-size:.76rem}.skill-create-surface{max-width:58rem}.skill-create-form{gap:1rem;display:grid}.skill-create-footer{border-top:1px solid var(--duty-border);justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;display:flex}.skill-create-footer>div{flex:none;gap:.65rem;display:flex}.pattern-editor{gap:.75rem;padding:1rem;display:grid}.pattern-copy-bar{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:14px;grid-template-columns:minmax(13rem,24rem) auto 1fr;align-items:end;gap:.65rem;padding:.8rem;display:grid}.pattern-copy-bar p{color:var(--duty-muted);align-self:center;margin:0;font-size:.8rem}.pattern-row{border:1px solid var(--duty-border);background:#fff;border-radius:14px;grid-template-columns:minmax(10rem,1.3fr) minmax(7rem,.8fr) minmax(7rem,.8fr) 8rem 2rem;align-items:end;gap:.55rem;padding:.8rem;display:grid}.pattern-days{border:0;grid-column:1/-1;min-width:0;margin:0;padding:0}.pattern-days legend{color:var(--duty-muted);margin-bottom:.4rem;font-size:.78rem;font-weight:700}.weekday-options{flex-wrap:wrap;gap:.4rem;display:flex}.weekday-option{border:1px solid var(--duty-border);color:var(--duty-primary);background:var(--duty-subtle);cursor:pointer;border-radius:999px;grid-template:none;align-items:center;gap:.35rem;padding:.42rem .62rem;display:inline-flex}.weekday-option:has(input:checked){border-color:var(--duty-secondary);background:var(--duty-accent)}.weekday-option input{width:1rem;height:1rem;min-height:1rem;accent-color:var(--duty-primary);padding:0}.pattern-row input,.pattern-row select{min-height:2.55rem;padding:.45rem .6rem}.row-actions,.publish-row{justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.roster-list{gap:1rem;margin:1rem 0;display:grid}.roster-card .panel-heading p{color:var(--duty-muted);margin-bottom:0}.shift-list{gap:.65rem;display:grid}.shift-row{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:14px;grid-template-columns:8.5rem minmax(10rem,1fr) minmax(8rem,auto);align-items:center;gap:1rem;min-width:0;padding:.85rem;display:grid}.shift-row.has-action{grid-template-columns:8.5rem minmax(10rem,1fr) minmax(8rem,auto) minmax(10rem,auto)}.shift-row h3,.shift-row p{margin-bottom:.2rem}.shift-identity h3{overflow-wrap:anywhere}.shift-identity p{color:var(--duty-muted)}.shift-time{display:grid}.shift-time span{color:var(--duty-muted);font-variant-numeric:tabular-nums}.assignment-editor{border:1px solid var(--duty-border);background:#fff;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;width:min(50rem,72vw);margin-top:.7rem;padding:.85rem;display:grid}.publish-row{border-top:1px solid var(--duty-border);margin-top:1rem;padding-top:1rem}.publish-row p{color:var(--duty-muted);margin:0 auto 0 0}.control-shift-list{gap:.75rem;min-width:0;padding:1rem;display:grid}.control-shift{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:16px;grid-template-columns:minmax(12rem,1fr) auto;align-items:start;gap:.85rem 1rem;min-width:0;padding:1rem;display:grid}.control-shift-main{justify-items:start;gap:.12rem;min-width:0;display:grid}.control-shift-main>strong{font-size:.98rem}.control-shift p{color:var(--duty-muted);margin:0;font-size:.82rem}.control-shift-type{color:var(--duty-secondary);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.18rem;font-size:.68rem;font-weight:760}.control-shift .shift-variance{color:var(--warning);background:var(--warning-bg);border-radius:999px;margin-top:.4rem;padding:.25rem .5rem;font-size:.72rem;font-weight:700}.control-shift .shift-substitution{color:var(--duty-primary);margin-top:.3rem;font-weight:650}.shift-confirm-actions{justify-self:end;min-width:0}.shift-confirm-actions[open]{border-top:1px solid var(--duty-border);grid-column:1/-1;justify-self:stretch;gap:.75rem;width:100%;padding-top:.85rem;display:grid}.shift-confirm-trigger{white-space:nowrap;border:1px solid #0000;border-radius:10px;align-items:center;gap:.45rem;min-height:2.5rem;padding:.5rem .7rem;list-style:none;display:inline-flex}.shift-confirm-trigger::-webkit-details-marker{display:none}.shift-confirm-trigger:before{content:"";border-bottom:2px solid;border-right:2px solid;width:.42rem;height:.42rem;transition:transform .18s;transform:rotate(-45deg)}.shift-confirm-actions[open]>.shift-confirm-trigger{color:var(--duty-muted);border-color:var(--duty-border);background:#fff;justify-self:end}.shift-confirm-actions[open]>.shift-confirm-trigger:before{transform:rotate(135deg)}.shift-confirm-open,.shift-confirm-actions[open] .shift-confirm-closed{display:none}.shift-confirm-actions[open] .shift-confirm-open{display:inline}.shift-report-form{border:1px solid var(--duty-border);background:#fff;border-radius:16px;grid-template-columns:minmax(13rem,1.1fr) minmax(11rem,.7fr) minmax(15rem,1.2fr);gap:1rem;min-width:0;padding:1rem;display:grid;overflow:hidden;box-shadow:0 10px 28px #10211f0d}.shift-report-heading{border-bottom:1px solid var(--duty-border);grid-column:1/-1;align-items:flex-start;gap:.75rem;padding-bottom:.85rem;display:flex}.shift-report-heading>span{width:2.35rem;height:2.35rem;color:var(--duty-secondary);background:var(--duty-accent);border-radius:10px;flex:none;place-items:center;display:grid}.shift-report-heading strong{margin-bottom:.12rem;display:block}.shift-report-heading p{color:var(--duty-muted);margin:0;font-size:.78rem}.shift-outcome-field{border:0;min-width:0;margin:0;padding:0}.shift-outcome-field legend{color:var(--duty-muted);margin-bottom:.4rem;font-size:.78rem;font-weight:700}.shift-outcome-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;display:grid}.shift-outcome-option{cursor:pointer;display:block;position:relative}.shift-outcome-option input{opacity:0;width:1px;height:1px;min-height:0;position:absolute}.shift-outcome-option>span{border:1px solid var(--duty-border);min-height:3rem;color:var(--duty-primary);background:var(--duty-subtle);border-radius:12px;justify-content:center;align-items:center;gap:.45rem;padding:.65rem;display:flex}.shift-outcome-option input:checked+span{border-color:var(--duty-secondary);box-shadow:0 0 0 1px var(--duty-secondary);background:#f1faf6}.shift-outcome-option input:focus-visible+span{outline-offset:2px;outline:3px solid #2d7d6a2e}.shift-outcome-option svg{width:1rem;height:1rem}.shift-delta-field,.shift-reason-field{align-content:start;min-width:0}.shift-minute-input{position:relative}.shift-minute-input input{font-variant-numeric:tabular-nums;min-width:0;padding-right:3rem}.shift-minute-input>span{color:var(--duty-muted);pointer-events:none;font-size:.75rem;position:absolute;top:50%;right:.8rem;transform:translateY(-50%)}.shift-reason-field textarea{min-height:4.7rem}.shift-report-form small{color:var(--duty-muted)}.shift-report-footer{border-top:1px solid var(--duty-border);grid-column:1/-1;justify-content:flex-end;align-items:center;gap:1rem;padding-top:.85rem;display:flex}.shift-report-footer p{color:var(--duty-muted);margin:0 auto 0 0;font-size:.76rem}.shift-consuntivo-status{justify-items:start;gap:.3rem;min-width:0;display:grid}.shift-consuntivo-status small{max-width:18rem;color:var(--duty-muted)}.shift-review-actions{border-top:1px solid var(--duty-border);flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end;align-items:center;gap:.5rem;min-width:0;padding-top:.75rem;display:flex}.shift-review-actions form{margin:0}.shift-action-menu{min-width:0}.shift-action-menu>summary{list-style:none}.shift-action-menu>summary::-webkit-details-marker{display:none}.shift-action-menu[open]{border:1px solid var(--duty-border);background:#fff;border-radius:14px;flex:100%;width:100%;padding:.75rem}.shift-action-menu[open]>summary{width:max-content;margin-left:auto}.shift-action-form{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr)) auto;justify-content:stretch;align-items:end;display:grid;margin-top:.75rem!important}.shift-action-form label{min-width:0}.shift-action-form input,.shift-action-form select{width:100%;min-width:0}.reconciliation-panel{width:100%;min-width:0;margin-top:1rem;margin-bottom:1rem;padding:0;position:relative;overflow:hidden}.reconciliation-summary{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.85rem;min-width:0;padding:1rem 1.15rem;list-style:none;display:grid}.reconciliation-summary::-webkit-details-marker{display:none}.reconciliation-summary:after{border-right:2px solid var(--duty-secondary);border-bottom:2px solid var(--duty-secondary);content:"";width:.55rem;height:.55rem;margin:0 .3rem 0 .2rem;transition:transform .18s;transform:rotate(45deg)}.reconciliation-panel[open]>.reconciliation-summary{border-bottom:1px solid var(--duty-border);background:var(--duty-subtle)}.reconciliation-panel[open]>.reconciliation-summary:after{transform:rotate(225deg)}.reconciliation-summary:focus{outline:none}.reconciliation-summary:focus-visible{box-shadow:inset 0 0 0 3px #2d7d6a33}.reconciliation-summary-icon{width:2.7rem;height:2.7rem;color:var(--duty-primary);background:var(--duty-accent);border-radius:12px;place-items:center;display:grid}.reconciliation-summary-copy{gap:.08rem;min-width:0;display:grid}.reconciliation-summary-copy .eyebrow{margin:0}.reconciliation-summary-copy strong{font-size:1rem}.reconciliation-summary-copy small{overflow-wrap:anywhere}.reconciliation-empty{border:1px dashed var(--duty-border);color:var(--success);background:var(--success-bg);border-radius:14px;align-items:center;gap:.75rem;margin:1rem;padding:1rem;display:flex}.reconciliation-empty p{color:var(--duty-muted);margin:.12rem 0 0;font-size:.8rem}.shift-area-switcher{border:1px solid var(--duty-border);background:#fff;border-radius:16px;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem;padding:.35rem;display:inline-flex}.shift-area-switcher a{color:var(--duty-muted);border-radius:12px;padding:.7rem 1rem;font-weight:750}.shift-area-switcher a.is-active{color:#fff;background:var(--duty-primary)}.my-shifts{gap:1rem;min-width:0;margin-top:1rem;display:grid}.my-shifts-overview .panel-heading p:last-child{max-width:44rem}.my-shifts-month{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:14px;grid-template-columns:auto minmax(10rem,1fr) auto;align-items:center;gap:.7rem;padding:.4rem;display:grid}.my-shifts-month>strong{color:var(--duty-primary);text-align:center;text-transform:capitalize;font-size:.92rem}.my-shifts-month>a{border:1px solid var(--duty-border);min-height:2.55rem;color:var(--duty-primary);background:#fff;border-radius:10px;justify-content:center;align-items:center;padding:.5rem .75rem;font-size:.76rem;font-weight:750;display:inline-flex}.my-shifts-month>a:hover{border-color:var(--duty-secondary)}.my-shifts-month .my-shifts-current-month{background:0 0;border:0;grid-column:1/-1;justify-self:center;min-height:auto;padding:.25rem .55rem;font-size:.7rem}.my-shifts-summary{border:1px solid var(--duty-border);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1rem;display:grid;overflow:hidden}.my-shifts-summary>div{border-right:1px solid var(--duty-border);background:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;min-width:0;padding:.75rem .85rem;display:grid}.my-shifts-summary>div:last-child{border-right:0}.my-shifts-summary>div.is-attention{background:var(--warning-bg)}.my-shifts-summary span{color:var(--duty-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:700;overflow:hidden}.my-shifts-summary strong{color:var(--duty-primary);font-variant-numeric:tabular-nums;font-size:1.25rem}.my-shift-sections{gap:1rem;display:grid}.my-shift-section{padding:0;overflow:hidden}.my-shift-section-heading{border-bottom:1px solid var(--duty-border);background:var(--duty-subtle);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1.1rem;display:flex}.my-shift-section-heading h3{margin:0 0 .15rem;font-size:1rem}.my-shift-section-heading p{color:var(--duty-muted);margin:0;font-size:.76rem}.my-shift-days{display:grid}.my-shift-day{border-bottom:1px solid var(--duty-border)}.my-shift-day:last-child{border-bottom:0}.my-shift-day>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto 1rem;align-items:center;gap:.75rem;min-height:3.6rem;padding:.65rem 1rem;list-style:none;display:grid}.my-shift-day>summary::-webkit-details-marker{display:none}.my-shift-day>summary:after{border-right:2px solid var(--duty-secondary);border-bottom:2px solid var(--duty-secondary);content:"";width:.48rem;height:.48rem;transition:transform .18s;transform:rotate(45deg)}.my-shift-day[open]>summary{background:#f5f1e88c}.my-shift-day[open]>summary:after{transform:rotate(225deg)}.my-shift-day>summary>div{gap:.05rem;min-width:0;display:grid}.my-shift-day>summary strong{text-transform:capitalize;font-size:.8rem}.my-shift-day>summary span:not(.count-pill){color:var(--duty-muted);font-size:.68rem}.my-shift-day>summary:focus-visible{outline-offset:-3px;outline:3px solid #2d7d6a33}.my-shift-day .shift-list{border-top:1px solid var(--duty-border);gap:0}.my-shift-day .shift-row{border:0;border-bottom:1px solid var(--duty-border);background:#fff;border-radius:0;padding:.8rem 1rem}.my-shift-day .shift-row:last-child{border-bottom:0}.my-shift-day .shift-time strong{font-variant-numeric:tabular-nums}.my-shift-day .shift-time span{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.my-shift-day .shift-identity h3{margin:0;font-size:.9rem}.my-shift-day .shift-identity p{margin:.12rem 0 0;font-size:.72rem}.my-shifts-empty strong{text-transform:capitalize;margin-bottom:.2rem}.my-shifts-empty p{margin:0}.planning-context-switcher{width:min(15rem,100%);margin-left:auto}.planning-switch-control,.planning-context-static{gap:.3rem;display:grid}.planning-switch-control>span,.planning-context-static>span{color:var(--duty-secondary);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:760;line-height:1rem}.planning-switch-control select{border-color:var(--duty-primary);background-color:var(--duty-subtle);min-height:2.7rem;padding-block:.5rem;font-weight:700}.planning-context-static{padding:.45rem 0}.planning-context-static strong{color:var(--duty-primary);font-size:.92rem}.roster-pagination{border-top:1px solid var(--duty-border);justify-content:flex-end;align-items:center;gap:.65rem;margin-top:1rem;padding-top:1rem;display:flex}.roster-pagination [aria-disabled=true]{opacity:.45;pointer-events:none}.offline-page,.app-loading{text-align:center;place-content:center;justify-items:center;gap:.7rem;max-width:40rem;min-height:100vh;margin:auto;padding:2rem;display:grid}.offline-page p{color:var(--duty-muted)}.page-skeleton{gap:1rem;display:grid}.page-skeleton span{background:linear-gradient(100deg,#fff 30%,#edf2ed 50%,#fff 70%) 0 0/200% 100%;border-radius:20px;height:8rem;animation:1.3s infinite shimmer}@keyframes shimmer{to{background-position-x:-200%}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1000px){.sidebar{width:13.5rem}.app-content{margin-left:13.5rem}.kpi-grid{grid-template-columns:repeat(2,1fr)}.widget-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.evidence-grid,.control-hero-grid{grid-template-columns:1fr}.control-attention-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.control-signal-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.control-signal:nth-child(2n){border-right:0}.control-signal:nth-child(n+3){border-top:1px solid var(--duty-border)}.filter-bar{grid-template-columns:repeat(2,1fr)}.form-section{grid-template-columns:1fr;gap:1rem}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.person-card{grid-template-columns:2.8rem minmax(0,1fr) minmax(0,1fr);grid-template-areas:"avatar identity identity"".access operativity"".visual visual"".actions actions"}.pattern-copy-bar{grid-template-columns:minmax(12rem,1fr) auto}.pattern-copy-bar p{grid-column:1/-1}.pattern-row{grid-template-columns:repeat(3,minmax(0,1fr))}.pattern-row .icon-button{align-self:center}}@media (max-width:860px){.auth-page{background:var(--duty-primary);display:block}.auth-brand-panel{min-height:17rem;padding:1.5rem}.auth-brand-panel>img{width:8.8rem;height:auto}.auth-tagline{max-width:19rem;font-size:2.65rem}.auth-card{margin-top:-1.5rem}.sidebar{display:none}.app-content{margin-left:0}.topbar{min-height:4.5rem;padding:.75rem 1rem}.install-button{display:none}.page-container{padding:1.2rem 1rem 6.5rem}.bottom-nav{z-index:30;color:#fff;background:var(--duty-primary);border:1px solid #ffffff24;border-radius:18px;grid-auto-columns:1fr;grid-auto-flow:column;padding:.45rem;display:grid;position:fixed;inset:auto .65rem .65rem;box-shadow:0 12px 35px #0b3b3847}.bottom-nav a{justify-items:center;gap:.2rem;min-width:0;padding:.45rem .25rem;font-size:.63rem;font-weight:650;display:grid}.bottom-nav a[aria-current=page]{color:var(--duty-accent)}.bottom-nav details:has(a[aria-current=page])>summary{color:var(--duty-accent)}.bottom-nav svg{width:1.1rem;height:1.1rem}.mobile-more{min-width:0;position:relative}.mobile-more>summary{align-content:center;justify-items:center;gap:.2rem;min-height:100%;padding:.45rem .25rem;font-size:.63rem;font-weight:650;list-style:none;display:grid}.mobile-more>summary::-webkit-details-marker{display:none}.mobile-more-icon{letter-spacing:.08em;font-size:1rem;line-height:1.1rem}.mobile-more-menu{border:1px solid var(--duty-border);width:min(15rem,100vw - 1.3rem);color:var(--duty-ink);box-shadow:var(--shadow);background:#fff;border-radius:16px;gap:.2rem;padding:.5rem;display:grid;position:absolute;bottom:calc(100% + .8rem);right:0}.mobile-more-menu a{border-radius:10px;grid-template-columns:auto 1fr;place-items:center start;gap:.65rem;min-height:2.75rem;padding:.65rem .75rem;font-size:.8rem}.mobile-more-menu a[aria-current=page]{color:var(--duty-primary);background:var(--duty-subtle)}.page-header{align-items:flex-end}.page-header h1{font-size:2rem}.task-card{grid-template-columns:4.8rem 1fr}.task-time strong{font-size:1rem}.task-heading{display:grid}.task-heading .status{justify-self:start}.task-actions,.task-actions form,.task-actions .button{width:100%}.photo-form{grid-template-columns:1fr}.photo-form p{grid-column:1}.filter-bar,.form-section-grid{grid-template-columns:1fr}.control-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.control-filter-bar>label{min-width:0}.control-filter-bar .button{width:100%}.filter-bar .button,.span-2{grid-column:1}.kpi-grid{gap:.65rem}.kpi-card{padding:.9rem}.kpi-card>span{display:none}.kpi-card strong{font-size:1.55rem}.widget-toolbar{flex-direction:column;align-items:stretch}.widget-settings>div{left:0;right:auto}.widget-card-actions{opacity:1;grid-column:1/-1;position:static}.page-header:has(.planning-context-switcher){flex-direction:column;align-items:stretch}.planning-context-switcher{border-top:1px solid var(--duty-border);width:100%;margin-left:0;padding-top:.75rem}.evidence-card{grid-template-columns:1fr}.evidence-card>img{height:13rem}.template-card,.user-card,.notification-card{grid-template-columns:1fr;display:grid}.push-settings{grid-template-columns:auto minmax(0,1fr)}.push-settings-actions{grid-column:1/-1;justify-content:stretch}.push-settings-actions .button{flex:1}.notification-icon{display:none}.person-card{grid-template-columns:2.8rem minmax(0,1fr);grid-template-areas:"avatar identity""access access""operativity operativity""visual visual""actions actions"}.person-visual,.resource-grid,.operational-grid,.assignment-editor,.location-staffing-grid{grid-template-columns:1fr}.resource-card-wide{grid-column:1}.location-unit-item{grid-template-columns:1fr;align-items:stretch}.location-unit-actions{justify-content:flex-start}.location-unit-actions details[open]{width:100%}.period-row,.exception-card,.pattern-row,.shift-row,.shift-row.has-action,.control-shift{grid-template-columns:1fr}.my-shifts-month{grid-template-columns:1fr 1fr}.my-shifts-month>strong{grid-area:1/1/auto/-1;padding:.35rem}.my-shifts-summary{grid-template-columns:1fr}.my-shifts-summary>div{border-right:0;border-bottom:1px solid var(--duty-border)}.my-shifts-summary>div:last-child{border-bottom:0}.control-shift-list{padding:.8rem}.shift-review-actions{justify-content:flex-start}.shift-review-actions details[open],.shift-report-form{width:100%;min-width:0}.shift-action-form{grid-template-columns:1fr}.reconciliation-summary{grid-template-columns:auto minmax(0,1fr) auto}.reconciliation-summary .count-pill{grid-column:2;justify-self:start}.reconciliation-summary:after{grid-area:1/3/span 2}.shift-confirm-actions{justify-self:stretch}.shift-confirm-trigger{border-color:var(--duty-border);background:#fff;justify-content:center;width:100%}.shift-confirm-actions[open]>.shift-confirm-trigger{justify-self:start;width:auto}.shift-report-form{grid-template-columns:1fr}.shift-report-heading,.shift-report-footer{grid-column:1}.shift-report-footer{flex-direction:column;align-items:stretch}.shift-report-footer .button{width:100%}.period-row>span{display:none}.operational-grid,.assignment-editor{width:100%}.operational-save-row{flex-direction:column;align-items:stretch}.operational-save-row .button{width:100%}.template-actions,.user-actions{justify-content:flex-start}.template-actions details[open]{width:100%}.form-section{padding:1.25rem 1rem}.form-footer{flex-direction:column;align-items:stretch;padding:1rem}.form-footer p{margin:0}.form-footer .button{width:100%}.skill-catalog-heading{flex-direction:column;align-items:flex-start}.skill-catalog-heading p:last-child{text-align:left}.skill-catalog-item{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy status""action action""editor editor";align-items:start}.skill-catalog-editor{justify-self:end}}@media (max-width:520px){.structure-tabs{flex-wrap:wrap;overflow-x:visible}.structure-tabs a{flex:auto}.control-filter-bar,.control-summary-hero{grid-template-columns:1fr}.control-completion-ring{width:5rem;height:5rem}.control-completion-ring:before{width:3.7rem;height:3.7rem}.control-attention-metric{grid-template-columns:1fr;align-content:start;gap:.35rem;padding:.7rem}.control-attention-metric>span{width:1.85rem;height:1.85rem}.control-attention-metric strong{grid-area:1/1;justify-self:end;font-size:1.1rem}.control-command-heading{gap:.5rem;display:grid}.control-command-heading>p{text-align:left}.control-signal{min-height:7.5rem;padding:.8rem}.control-signal small{white-space:normal}.control-chart-section{padding-inline:1rem}.control-attention-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.control-attention-row>.button,.control-attention-row>.status{grid-column:2;justify-self:stretch}.control-overdue-card{grid-template-columns:auto minmax(0,1fr);align-items:start}.control-overdue-card>.status{grid-column:2;justify-self:start}.control-overdue-details{grid-column:1/-1}.control-reminder-panel{flex-direction:column;align-items:stretch}.control-reminder-panel form,.control-reminder-panel .button{width:100%}.choice-grid,.choice-grid-compact,.activity-skill-toolbar{grid-template-columns:1fr}.activity-skill-count{white-space:normal;justify-content:center}.activity-skill-summary{flex-direction:column;align-items:flex-start;gap:.15rem}.activity-skill-list,.location-unit-create-actions{grid-template-columns:1fr}.location-unit-actions,.location-unit-actions form,.location-unit-actions .button{width:100%}.available-unit-list>div{grid-template-columns:1fr}.available-unit-list .button{width:100%}.pattern-copy-bar{grid-template-columns:1fr}.planning-switch-control{width:100%}.action-toast{top:auto;bottom:5.7rem;right:1rem}.person-actions,.person-actions>form,.person-actions>details,.person-actions .button{width:100%}.detail-grid{grid-template-columns:1fr}.skill-catalog-item{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"copy copy""status action""editor editor";padding:1rem}.skill-catalog-status{grid-area:status;justify-self:start}.skill-catalog-editor{grid-area:action;justify-self:end;width:auto}.skill-catalog-editor>summary{min-width:7rem}.skill-catalog-editor[open]{grid-area:editor;width:100%}.skill-catalog-editor[open]>summary{width:auto;margin-left:auto}.skill-edit-form{grid-template-columns:1fr}.skill-edit-description,.skill-edit-footer{grid-column:1}.skill-edit-footer,.skill-create-footer{flex-direction:column;align-items:stretch}.skill-edit-footer .button,.skill-create-footer>div,.skill-create-footer .button{width:100%}.skill-create-footer>div{flex-direction:column-reverse}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.button:hover{transform:none}}.planning-view-switch,.space-view-switch{border:1px solid var(--duty-border);background:#fff;border-radius:12px;gap:.2rem;padding:.2rem;display:inline-flex}.planning-view-switch{margin-top:.65rem}.planning-view-switch a,.space-view-switch a{color:var(--duty-muted);border-radius:9px;padding:.52rem .75rem;font-size:.78rem;font-weight:750;text-decoration:none}.planning-view-switch a.is-active,.space-view-switch a.is-active{color:#fff;background:var(--duty-primary)}.space-page-header{width:min(112rem,100vw - 17.5rem);padding-bottom:.5rem;position:relative;left:50%;transform:translate(-50%)}.space-page-header>div{width:100%;max-width:none}.space-planner{--space-panel:#fffffff0;color:#10211f;grid-template-columns:minmax(0,1fr);gap:.55rem;width:min(112rem,100vw - 17.5rem);min-height:calc(100vh - 9.5rem);display:grid;position:relative;left:50%;transform:translate(-50%)}.space-topbar{z-index:20;border:1px solid var(--duty-border);background:var(--space-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:14px;align-items:center;gap:.75rem;min-height:3.6rem;padding:.55rem .65rem;display:flex;position:sticky;top:.4rem;box-shadow:0 12px 35px #0b3b381a}.space-topbar>label{gap:.15rem;min-width:min(24rem,35vw);display:grid}.space-topbar label>span{color:var(--duty-muted);font-size:.65rem;font-weight:750}.space-topbar select{border:1px solid var(--duty-border);min-height:2.2rem;font:inherit;background:#fff;border-radius:8px;padding-inline:.55rem;font-size:.76rem}.space-map-toggle{border:1px solid var(--duty-border);min-height:2.2rem;color:var(--duty-primary);font:inherit;background:#fff;border-radius:9px;padding:.42rem .65rem;font-size:.7rem;font-weight:750}.space-topbar .save-state{margin-left:auto}.space-allocation-progress{border:1px solid var(--duty-border);background:var(--space-panel);border-radius:14px;grid-template-columns:minmax(14rem,18rem) minmax(0,1fr);grid-template-areas:"heading metrics""track track";align-items:center;gap:.48rem 1rem;padding:.65rem .8rem;display:grid;box-shadow:0 10px 30px #0b3b3812}.space-allocation-progress-heading{grid-area:heading;justify-content:space-between;align-items:center;gap:.8rem;min-width:0;display:flex}.space-allocation-progress-heading>div{min-width:0;display:grid}.space-allocation-progress-heading p{margin:0}.space-allocation-progress-heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.space-allocation-progress-heading>b{color:var(--duty-primary);font-variant-numeric:tabular-nums;font-size:1.25rem}.space-allocation-track{background:#e4eae6;border-radius:999px;grid-area:track;height:.48rem;overflow:hidden}.space-allocation-track>span{border-radius:inherit;background:#d39b43;height:100%;transition:width .24s;display:block}.space-allocation-progress.is-complete .space-allocation-track>span{background:#1e7a55}.space-allocation-progress.is-empty .space-allocation-track>span{background:#aebdb9}.space-allocation-metrics{min-width:0;color:var(--duty-muted);flex-wrap:wrap;grid-area:metrics;justify-content:flex-end;align-items:center;gap:.4rem .75rem;font-size:.64rem;display:flex}.space-allocation-metrics>span{white-space:nowrap;align-items:baseline;gap:.25rem;display:inline-flex}.space-allocation-metrics b{color:var(--duty-ink);font-variant-numeric:tabular-nums;font-size:.75rem}.space-allocation-metrics small{color:var(--duty-muted);text-align:right;flex-basis:100%;font-size:.57rem}.space-reality-note{color:#2e6fa3;text-align:center;background:#e7f2fb;border-radius:10px;margin:0;padding:.5rem .75rem;font-size:.74rem;font-weight:700}.space-layout{grid-template-columns:minmax(18rem,21rem) minmax(0,1fr);justify-self:stretch;gap:.55rem;width:100%;min-width:0;min-height:clamp(42rem,72vh,58rem);display:grid}.space-layout.is-dock-collapsed{grid-template-columns:minmax(0,1fr)}.space-dock,.space-inspector{z-index:5;border:1px solid var(--duty-border);background:var(--space-panel);border-radius:16px;flex-direction:column;gap:.75rem;padding:.85rem;display:flex;box-shadow:0 15px 40px #0b3b3814}.space-dock h2,.space-inspector h2{margin:.1rem 0 0;font-size:1.05rem}.space-dock{scrollbar-gutter:stable;max-height:clamp(42rem,72vh,58rem);overflow-y:auto}.space-dock-help{color:var(--duty-muted);margin:.3rem 0 0;font-size:.66rem;line-height:1.45}.space-search input{border:1px solid var(--duty-border);width:100%;min-height:2.45rem;font:inherit;border-radius:9px;padding-inline:.65rem}.space-people-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;display:grid}.space-people-filters button{border:1px solid var(--duty-border);width:100%;min-width:0;color:var(--duty-muted);background:var(--duty-subtle);font:inherit;border-radius:8px;justify-items:center;gap:.08rem;padding:.4rem .2rem;font-size:.58rem;font-weight:700;display:grid}.space-people-filters button.is-active{border-color:var(--duty-primary);color:#fff;background:var(--duty-primary)}.space-people-filters b{font-size:.68rem}.space-person-list{scrollbar-gutter:stable;flex:none;grid-auto-rows:min-content;align-content:start;gap:.38rem;min-height:14rem;max-height:22rem;padding-right:.2rem;display:grid;overflow-y:auto}.space-person{color:#10211f;width:100%;font:inherit;text-align:left;cursor:grab;background:#f7faf7;border:1px solid #0000;border-radius:11px;grid-template-columns:2.25rem minmax(0,1fr);align-items:center;gap:.55rem;padding:.48rem;display:grid}.space-person:hover,.space-person.is-selected{background:#e5f7ed;border-color:#2d7d6a}.space-person.availability-unavailable{background:#fffaf0;border-color:#d39b43}.space-person.availability-unavailable.is-selected{outline-offset:1px;outline:2px solid #d39b43}.space-person span:last-child{min-width:0;display:grid}.space-person strong{text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;overflow:hidden}.space-person small{color:var(--duty-muted);font-size:.65rem}.space-person .space-person-units{color:var(--duty-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:750;overflow:hidden}.space-person .space-person-availability{border-radius:999px;justify-self:start;align-items:center;gap:.22rem;margin-top:.18rem;padding:.12rem .34rem;font-size:.55rem;font-weight:750;display:inline-flex}.space-person-availability b{font-size:.6rem}.space-person-availability.is-available{color:#1e6b4a;background:#e5f7ed}.space-person-availability.is-unavailable{color:#8a5a12;background:#fff2d6}.space-person-availability.is-unconfigured{color:#526763;background:#eaf0ee}.space-avatar{color:#0b3b38;background:#b9f5d8 50%/cover no-repeat;border-radius:50%;place-items:center;width:2.1rem;height:2.1rem;font-size:.68rem;font-weight:800;display:grid!important}.space-person-empty{color:var(--duty-muted);text-align:center;margin:.4rem;font-size:.68rem}.space-person-eligibility{border:1px solid var(--duty-border);background:#f7faf7;border-radius:11px;flex:none;gap:.38rem;max-height:11.5rem;padding:.55rem;display:grid;overflow:hidden}.space-person-eligibility>div:first-child{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.space-person-eligibility p{margin:0}.space-person-eligibility>div:first-child>span:first-child{min-width:0;display:grid}.space-person-eligibility>div:first-child>span:first-child>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;overflow:hidden}.space-availability-badge{border-radius:999px;flex:none;align-items:center;gap:.22rem;padding:.22rem .38rem;font-size:.55rem;font-weight:800;display:inline-flex}.space-availability-badge.is-available{color:#1e6b4a;background:#e5f7ed}.space-availability-badge.is-unavailable{color:#8a5a12;background:#fff2d6}.space-availability-badge.is-unconfigured{color:#526763;background:#eaf0ee}.space-availability-context{color:var(--duty-muted);font-size:.54rem;line-height:1.35}.space-person-unit-list{scrollbar-width:thin;gap:.32rem;padding-bottom:.1rem;display:flex;overflow-x:auto}.space-person-unit-list>p{color:var(--duty-muted);font-size:.62rem}.space-person-unit-chip{border:1px solid var(--duty-border);background:#fff;border-radius:9px;flex:none;gap:.04rem;min-width:7.5rem;padding:.38rem .45rem;display:grid}.space-person-unit-chip strong{font-size:.66rem}.space-person-unit-chip small{color:var(--duty-muted);white-space:nowrap;font-size:.54rem}.space-person-unit-chip.is-assigned{border-color:var(--duty-secondary);background:#e5f7ed}.space-person-unit-chip.is-over{background:#fff2d6;border-color:#d39b43}.space-stage{background:#f5f1e8;border:1px solid #d1d8d0;border-radius:18px;width:100%;min-width:0;min-height:clamp(42rem,72vh,58rem);position:relative;overflow:hidden;box-shadow:0 18px 55px #0b3b3814}.space-canvas{position:absolute;inset:0 0 6.2rem}.space-camera-tools{z-index:6;border:1px solid var(--duty-border);background:#fffffff0;border-radius:11px;flex-wrap:wrap;align-items:center;gap:.35rem;max-width:calc(100% - 1.4rem);padding:.38rem;display:flex;position:absolute;top:.7rem;left:.7rem;box-shadow:0 8px 22px #0b3b381a}.space-camera-tools button{border:1px solid var(--duty-border);min-height:2rem;color:var(--duty-primary);font:inherit;background:#fff;border-radius:8px;padding:.35rem .55rem;font-size:.67rem;font-weight:750}.space-camera-tools span{color:var(--duty-muted);text-overflow:ellipsis;white-space:nowrap;margin-left:.2rem;font-size:.62rem;overflow:hidden}.space-area-list{z-index:4;grid-auto-columns:minmax(11rem,1fr);grid-auto-flow:column;gap:.42rem;padding:.2rem;display:grid;position:absolute;inset:auto .7rem .7rem;overflow-x:auto}.space-area-card{border:1px solid var(--duty-border);border-top:4px solid var(--area-color);color:#10211f;min-height:5.25rem;font:inherit;text-align:left;background:#fffffff5;border-radius:12px;grid-template-columns:3rem minmax(0,1fr);align-items:center;gap:.65rem;padding:.55rem .65rem;display:grid}.space-area-card.is-selected{outline-offset:1px;outline:2px solid #0b3b38}.space-area-card.is-neutral{opacity:.72;cursor:default}.space-area-card.is-ineligible{opacity:.42;cursor:not-allowed;filter:grayscale(.45)}.space-area-card span:last-child{display:grid}.space-area-card strong{font-size:.78rem}.space-area-card small{color:var(--duty-muted);font-size:.66rem}.space-area-card .space-area-allocation,.space-placeholder-status{border-radius:999px;align-items:center;gap:.22rem;width:max-content;margin-top:.2rem;padding:.14rem .34rem;font-size:.54rem;font-weight:800;line-height:1.25;display:inline-flex}.space-area-allocation b,.space-placeholder-status b{font-size:.58rem}.space-area-allocation.is-covered,.space-placeholder-status.is-covered{color:#1e7a55;background:#e5f7ed}.space-area-allocation.is-under,.space-placeholder-status.is-under{color:#8a5a12;background:#fff2d6}.space-area-allocation.is-over,.space-placeholder-status.is-over{color:#2e6fa3;background:#e7f2fb}.space-area-allocation.is-neutral,.space-placeholder-status.is-neutral{color:#526763;background:#eaf0ee}.space-area-count{color:#fff;background:var(--area-color);border-radius:10px;align-content:center;place-items:center;width:3rem;height:3rem;line-height:1;display:grid}.space-area-count b{font-variant-numeric:tabular-nums;font-size:1.2rem}.space-area-count small{color:#fff;margin-top:.18rem;font-size:.5rem;font-weight:750}.space-selection{z-index:7;gap:.35rem;width:min(17rem,100% - 1.4rem);display:grid;position:absolute;top:4.9rem;right:.7rem}.space-selection-chip{border:1px solid var(--duty-border);background:#fffffff0;border-radius:11px;justify-content:space-between;align-items:center;gap:.55rem;min-height:2.7rem;padding:.4rem .45rem .4rem .65rem;display:flex;box-shadow:0 8px 22px #0b3b381a}.space-selection-chip>span{min-width:0;display:grid}.space-selection-chip strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.space-selection-chip small{color:var(--duty-muted);font-size:.56rem}.space-selection-chip button{border:1px solid var(--duty-border);min-height:1.9rem;color:var(--duty-primary);font:inherit;background:#fff;border-radius:8px;flex:none;padding:.3rem .48rem;font-size:.62rem;font-weight:750}.space-selection.availability-available .space-selection-chip{border-color:#79b99b}.space-selection.availability-unavailable .space-selection-chip{border-color:#d39b43;box-shadow:0 8px 22px #8a5a1224}.space-selection.availability-unconfigured .space-selection-chip{border-color:#aebdb9}.space-inspector{width:100%;max-height:min(24rem,72vh - 10rem);position:static;overflow:auto}.space-inspector dl{gap:.4rem;margin:0;display:grid}.space-inspector dl div{border-bottom:1px solid var(--duty-border);justify-content:space-between;gap:.5rem;padding-bottom:.35rem;display:flex}.space-inspector dt{color:var(--duty-muted);font-size:.7rem}.space-inspector dd{margin:0;font-size:.72rem;font-weight:750}.space-inspector h3{margin:.25rem 0 0;font-size:.78rem}.space-inspector-actions{gap:.35rem;display:grid}.space-inspector-actions button,.space-configure-link{border:1px solid var(--duty-border);min-height:2.15rem;color:var(--duty-primary);font:inherit;text-align:center;background:#fff;border-radius:9px;padding:.45rem .55rem;font-size:.67rem;font-weight:750}.space-inspector-actions button:disabled{opacity:.5}.space-configure-link{margin-top:auto}.space-inspector-summary{color:var(--duty-muted);justify-content:space-between;align-items:center;font-size:.66rem;display:flex}.space-inspector-summary strong{color:var(--duty-ink);font-size:.8rem}.space-placement-list{gap:.32rem;display:grid}.space-placement-list>div{border:1px solid var(--duty-border);background:#fff;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.3rem;padding:.28rem;display:grid}.space-placement-list>div.is-selected{border-color:var(--duty-secondary);background:#f1faf5}.space-placement-list>div>button:first-child{min-width:0;color:var(--duty-ink);font:inherit;text-align:left;background:0 0;border:0;padding:.25rem;display:grid}.space-placement-list span{text-overflow:ellipsis;white-space:nowrap;font-size:.67rem;font-weight:750;overflow:hidden}.space-placement-list small,.space-placement-list p{color:var(--duty-muted);font-size:.6rem}.space-placement-list p{margin:.25rem 0;line-height:1.45}.space-remove-placement{color:#8b3a34;font:inherit;background:#fcece9;border:0;border-radius:7px;padding:.35rem;font-size:.58rem;font-weight:750}.space-remove-placement:disabled{opacity:.5}.space-inspector-availability{border-radius:9px;gap:.12rem;padding:.42rem .48rem;display:grid}.space-inspector-availability>span{align-items:center;gap:.3rem;display:flex}.space-inspector-availability strong{font-size:.65rem}.space-inspector-availability small{font-size:.56rem}.space-inspector-availability.is-available{color:#1e6b4a;background:#e5f7ed}.space-inspector-availability.is-unavailable{color:#8a5a12;background:#fff2d6}.space-inspector-availability.is-unconfigured{color:#526763;background:#eaf0ee}.space-inspector-units{gap:.28rem;display:grid}.space-inspector-units>p{margin:0}.space-inspector-units>div{flex-wrap:wrap;gap:.28rem;display:flex}.space-inspector-units>div>span{border:1px solid var(--duty-secondary);background:#e5f7ed;border-radius:8px;padding:.3rem .4rem;display:grid}.space-inspector-units>div>span.is-over{background:#fff2d6;border-color:#d39b43}.space-inspector-units strong{font-size:.62rem}.space-inspector-units small,.space-inspector-units>div>p{color:var(--duty-muted);margin:0;font-size:.54rem}.space-area-skill-coverage{border-top:1px solid var(--duty-border);gap:.38rem;padding-top:.55rem;display:grid}.space-area-skill-coverage>p{margin:0}.space-area-skill-coverage>div{gap:.32rem;display:grid}.space-area-skill-coverage article{border-radius:9px;gap:.08rem;padding:.4rem .46rem;display:grid}.space-area-skill-coverage article.is-covered{color:#1e7a55;background:#e5f7ed}.space-area-skill-coverage article.is-under{color:#8a5a12;background:#fff2d6}.space-area-skill-coverage article>span{align-items:center;gap:.3rem;display:flex}.space-area-skill-coverage article strong{font-size:.64rem}.space-area-skill-coverage small{color:var(--duty-muted);font-size:.55rem;line-height:1.4}.space-area-skill-coverage article small:last-child{color:currentColor;font-weight:750}.space-placeholder-tray{border:1px solid var(--duty-border);background:var(--space-panel);border-radius:14px;grid-template-columns:minmax(11rem,14rem) minmax(0,1fr);align-items:center;gap:.75rem;min-width:0;padding:.65rem .75rem;display:grid;box-shadow:0 10px 30px #0b3b3814}.space-placeholder-heading{gap:.2rem;min-width:0;display:grid}.space-placeholder-heading>div{gap:.05rem;display:grid}.space-placeholder-heading p{margin:0}.space-placeholder-heading strong{font-size:.78rem}.space-placeholder-heading small{color:var(--duty-muted);font-size:.6rem;line-height:1.4}.space-placeholder-list{overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;scrollbar-width:thin;grid-auto-columns:minmax(13rem,17rem);grid-auto-flow:column;gap:.5rem;min-width:0;padding:.15rem .15rem .35rem;display:grid;overflow-x:auto}.space-placeholder-list>button{border:1px dashed var(--duty-secondary);min-height:3.7rem;color:var(--duty-ink);text-align:left;font:inherit;cursor:copy;scroll-snap-align:start;background:#fff;border-radius:11px;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.48rem .55rem;transition:border-color .16s,background .16s,box-shadow .16s;display:grid}.space-placeholder-list>button:hover,.space-placeholder-list>button.is-drag-over{border-color:var(--duty-primary);background:#e5f7ed;box-shadow:0 0 0 3px #2d7d6a29}.space-placeholder-list>button>span:nth-child(2){min-width:0;display:grid}.space-placeholder-list small{color:var(--duty-muted);font-size:.61rem}.space-placeholder-list .space-placeholder-status{font-size:.52rem}.space-placeholder-list>button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.4)}.space-placeholder-list>button:disabled:hover{border-color:var(--duty-secondary);box-shadow:none;background:#fff}.space-placeholder-symbol{color:#fff;background:var(--duty-secondary);border-radius:8px;place-items:center;width:2rem;height:2rem;font-size:1.05rem;font-weight:800;display:grid}.space-placeholder-count{border-left:1px solid var(--duty-border);justify-items:center;min-width:2.7rem;padding-left:.55rem;display:grid}.space-placeholder-count b{font-variant-numeric:tabular-nums;font-size:1rem}.space-placeholder-count small{font-size:.5rem;font-weight:750}.space-stations button{border:1px solid var(--duty-border);color:#0b3b38;font:inherit;text-align:left;background:#fff;border-radius:9px;align-items:center;gap:.4rem;padding:.55rem;font-size:.7rem;display:flex}.space-publish{border-top:1px solid var(--duty-border);gap:.5rem;margin-top:auto;padding-top:.7rem;display:grid}.space-publish p{color:var(--duty-muted);margin:0;font-size:.68rem}.space-hud{z-index:18;border:1px solid var(--duty-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-radius:14px;grid-template-columns:11rem 1fr;align-items:center;gap:.7rem;padding:.65rem .8rem;display:grid;position:sticky;bottom:.5rem;box-shadow:0 -8px 28px #0b3b381a}.space-hud p{margin:0}.space-hud strong{font-size:.78rem}.space-hud-items{gap:.38rem;display:flex;overflow-x:auto}.coverage-pill{border-radius:999px;flex:none;align-items:center;gap:.3rem;padding:.35rem .52rem;font-size:.65rem;font-weight:700;display:inline-flex}.coverage-pill.is-under{color:#8a5a12;background:#fff2d6}.coverage-pill.is-covered{color:#1e7a55;background:#e5f7ed}.coverage-pill.is-over{color:#2e6fa3;background:#e7f2fb}.coverage-pill.is-neutral{color:#526763;background:#eaf0ee}.space-empty,.space-fallback,.space-loading{text-align:center;align-content:center;place-items:center;gap:.6rem;min-height:34rem;padding:2rem;display:grid}.space-empty p,.space-fallback p,.space-loading p{max-width:35rem;color:var(--duty-muted);margin:0}.space-empty-orbit,.space-loading-loop{border:.55rem solid #b9f5d8;border-top-color:#0b3b38;border-radius:50%;width:4rem;height:4rem}.space-loading-loop{animation:1.2s linear infinite space-spin}.space-dimensions{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}@keyframes space-spin{to{transform:rotate(360deg)}}@media (max-width:1000px){.space-page-header,.space-planner{width:calc(100vw - 15rem)}.space-layout{grid-template-columns:16rem minmax(26rem,1fr)}.space-selection{width:14rem}}@media (max-width:860px){.space-page-header,.space-planner{width:calc(100vw - 2rem)}.space-layout{grid-template-columns:16rem minmax(34rem,1fr);overflow-x:auto}.space-layout.is-dock-collapsed{grid-template-columns:minmax(44rem,1fr)}.space-topbar{flex-wrap:wrap}.space-topbar>label{min-width:min(28rem,70vw)}.space-topbar .save-state{margin-left:0}.space-allocation-progress{grid-template-columns:1fr;grid-template-areas:"heading""track""metrics"}.space-allocation-metrics{justify-content:flex-start}.space-allocation-metrics small{text-align:left}.space-placeholder-tray{grid-template-columns:1fr}.space-placeholder-heading{grid-template-columns:minmax(0,1fr) minmax(12rem,.8fr);align-items:end}.space-placeholder-heading>small{text-align:right}}@media (max-width:640px){.space-planner{display:none}.space-page-header:after{color:#2e6fa3;content:"Su smartphone il diorama è in sola lettura. Usa la vista griglia per il planning completo.";background:#e7f2fb;border-radius:10px;margin-top:.8rem;padding:.75rem;font-size:.75rem;display:block}.space-page-header a.back-link{display:inline-block}}@media (prefers-reduced-motion:reduce){.space-loading-loop{border-top-color:#b9f5d8;animation:none}*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.workforce-shell{grid-template-columns:minmax(0,1fr);gap:1rem;width:100%;min-width:0;max-width:100%;display:grid}.workforce-tabs{top:calc(var(--topbar-height) + .5rem);z-index:10;border:1px solid var(--duty-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;border-radius:16px;gap:.3rem;padding:.35rem;display:flex;position:sticky;overflow-x:auto}.workforce-tabs button{min-height:2.7rem;color:var(--duty-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;flex:none;padding:.6rem .9rem;font-weight:700}.workforce-tabs button.is-active{color:#fff;background:var(--duty-primary)}.workforce-view{grid-template-columns:minmax(0,1fr);gap:1rem;width:100%;min-width:0;max-width:100%;display:grid}.section-intro,.planner-toolbar{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.section-intro h2,.planner-toolbar h2{margin-bottom:.25rem}.section-intro p,.planner-toolbar p{color:var(--duty-muted);margin-bottom:0}.standard-plan-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.standard-plan-overview>div{border:1px solid var(--duty-border);background:#ffffff9e;border-radius:14px;justify-content:space-between;align-items:center;gap:.75rem;min-width:0;padding:.8rem 1rem;display:flex}.standard-plan-overview span{color:var(--duty-muted);font-size:.75rem;font-weight:700}.standard-plan-overview strong{color:var(--duty-primary);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1rem}.standard-shift-list{gap:.8rem;display:grid}.standard-shift{gap:0;padding:0;transition:border-color .18s,box-shadow .18s;display:grid;overflow:clip}.standard-shift.is-expanded{border-color:#2d7d6a8c;box-shadow:0 12px 34px #10211f14}.standard-shift-summary{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid}.standard-shift-toggle{min-width:0;min-height:4.75rem;color:var(--duty-ink);text-align:left;background:0 0;border:0;grid-template-columns:2.35rem minmax(0,1fr) auto 1rem;align-items:center;gap:.8rem;padding:.85rem 1rem;display:grid}.standard-shift-toggle:hover{background:var(--duty-subtle)}.standard-shift-number{width:2.35rem;height:2.35rem;color:var(--duty-primary);background:var(--duty-accent);font-variant-numeric:tabular-nums;border-radius:11px;place-items:center;font-size:.8rem;font-weight:800;display:grid}.standard-shift-title{gap:.15rem;min-width:0;display:grid}.standard-shift-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.standard-shift-title>span{color:var(--duty-muted);text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.74rem;overflow:hidden}.standard-shift-status{display:flex}.standard-shift-chevron{border-right:2px solid var(--duty-secondary);border-bottom:2px solid var(--duty-secondary);width:.55rem;height:.55rem;transition:transform .18s;transform:rotate(45deg)translateY(-2px)}.standard-shift-toggle[aria-expanded=true] .standard-shift-chevron{transform:rotate(225deg)translate(-1px,-1px)}.standard-shift-remove{align-self:center;min-height:2.75rem;margin-right:.85rem;padding-inline:.65rem}.standard-shift-body{border-top:1px solid var(--duty-border);background:var(--duty-surface);gap:.85rem;padding:1rem;display:grid}.standard-editor-section{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:14px;gap:1rem;min-width:0;padding:1rem;display:grid}.standard-editor-heading{grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:.7rem;min-width:0;display:grid}.standard-editor-heading>span{color:#fff;background:var(--duty-primary);border-radius:50%;place-items:center;width:2rem;height:2rem;font-size:.72rem;font-weight:800;display:grid}.standard-editor-heading h3{margin-bottom:.05rem}.standard-editor-heading p{color:var(--duty-muted);margin:0;font-size:.75rem}.standard-requirement-total{color:var(--duty-primary);background:var(--duty-accent);white-space:nowrap;border-radius:999px;padding:.4rem .6rem;font-size:.72rem}.standard-shift-heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.standard-shift-heading label{width:min(28rem,100%)}.weekday-picker{border:0;min-width:0;margin:0;padding:0}.weekday-picker legend{color:var(--duty-muted);margin-bottom:.45rem;font-size:.76rem;font-weight:750}.weekday-picker label{cursor:pointer;justify-content:center;align-items:center;margin:0 .35rem .35rem 0;display:inline-flex}.weekday-picker input{opacity:0;pointer-events:none;position:absolute}.weekday-picker span{border:1px solid var(--duty-border);text-align:center;border-radius:999px;place-items:center;min-width:2.75rem;min-height:2.75rem;padding:.45rem .6rem;font-size:.78rem;font-weight:750;display:grid}.weekday-picker input:focus-visible+span{outline-offset:2px;outline:3px solid #2d7d6a4d}.weekday-picker label.is-selected span{border-color:var(--duty-secondary);color:var(--duty-primary);background:var(--duty-accent)}.time-grid{grid-template-columns:minmax(8rem,12rem) minmax(8rem,12rem) minmax(12rem,1fr);align-items:end;gap:.7rem;display:grid}.checkbox-line{align-items:center;min-height:2.8rem;grid-template-columns:auto 1fr!important;display:flex!important}.checkbox-line input{width:1.15rem;min-height:1.15rem}.requirements-editor{border-top:1px solid var(--duty-border);grid-template-columns:minmax(12rem,.4fr) 1fr;gap:1rem;padding-top:1rem;display:grid}.requirements-editor p{color:var(--duty-muted);margin:.15rem 0 0;font-size:.78rem}.requirement-grid,.inline-requirements{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.55rem;display:grid}.requirement-grid input,.inline-requirements input{font-variant-numeric:tabular-nums}.standard-shift .requirement-grid{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}.standard-shift .requirement-grid label{border:1px solid var(--duty-border);min-width:0;min-height:3.5rem;color:var(--duty-muted);background:#fff;border-radius:12px;flex-direction:row;grid-template:none;justify-content:space-between;align-items:center;gap:.6rem;padding:.45rem .5rem .45rem .7rem;display:flex}.standard-shift .requirement-grid label.is-configured{color:var(--duty-ink);box-shadow:inset 3px 0 0 var(--duty-secondary);border-color:#2d7d6a73}.standard-shift .requirement-grid label>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.standard-shift .requirement-grid input{text-align:center;width:4.25rem;min-height:2.5rem;padding:.4rem}.standard-plan-empty{border:1px dashed var(--duty-border);background:#ffffff8c;border-radius:18px;justify-items:start;gap:.35rem;padding:1.25rem;display:grid}.standard-plan-empty p{color:var(--duty-muted);margin-bottom:.65rem}.sticky-save-bar{z-index:8;border:1px solid var(--duty-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex;position:sticky;bottom:1rem;box-shadow:0 12px 30px #0b3b381f}.save-state{color:var(--duty-muted);font-variant-numeric:tabular-nums;margin:0;font-size:.8rem}.sticky-save-bar .save-state{gap:.08rem;min-width:0;display:grid}.sticky-save-bar .save-state strong{color:var(--duty-ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sticky-save-bar .save-state span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sticky-save-bar .button:disabled{cursor:not-allowed}.save-saving{color:var(--duty-secondary)}.save-saved{color:var(--duty-success,#247353)}.save-error{color:var(--duty-danger,#9a352f)}.week-create-form{grid-template-columns:1fr 1.2fr auto;align-items:end;gap:1rem;max-width:46rem;display:grid}.week-create-form fieldset{border:0;min-width:0;margin:0;padding:0}.week-create-form fieldset label{grid-template-columns:auto 1fr;align-items:center;gap:.45rem;margin-top:.35rem;display:flex}.week-create-form input[type=radio]{width:1rem;min-height:1rem}.planner-actions{justify-items:end;gap:.4rem;display:grid}.planner-primary-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.planner-readonly-note{color:var(--duty-muted);margin:0;font-size:.78rem}.week-switch{align-items:end;gap:.4rem;display:flex}.week-switch label{min-width:10rem}.week-switch input{min-height:2.45rem;padding:.35rem .5rem}.mobile-day-switch{display:none}.week-grid{grid-template-columns:repeat(7,minmax(10.5rem,1fr));align-items:start;gap:.55rem;width:100%;min-width:0;padding-bottom:.5rem;display:grid;overflow-x:auto}.planner-day{border:1px solid var(--duty-border);background:#ffffff8c;border-radius:16px;align-content:start;gap:.55rem;min-height:20rem;padding:.6rem;display:grid}.planner-day>header{padding:.3rem;display:grid}.planner-day>header span{color:var(--duty-muted);font-size:.72rem}.planner-shift{border:1px solid var(--duty-border);background:#fff;border-radius:13px;gap:.55rem;min-width:0;padding:.65rem;display:grid;overflow:visible;box-shadow:0 6px 16px #0b3b380d}.planner-shift.is-cancelled{background:var(--duty-subtle);border-style:dashed}.planner-shift-title{justify-content:space-between;align-items:flex-start;gap:.45rem;display:flex}.planner-shift-title>div{min-width:0;display:grid}.planner-shift-title strong{overflow-wrap:anywhere}.planner-shift-title span{color:var(--duty-muted);font-variant-numeric:tabular-nums;font-size:.72rem}.planner-shift-title .shift-card-time{align-items:center;gap:.28rem;display:flex}.planner-shift-title .shift-public-hours{width:1rem;height:1rem;color:var(--info);background:var(--info-bg);cursor:help;border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative}.shift-public-hours>svg{width:.68rem;height:.68rem}.shift-public-hours-tooltip{z-index:30;width:12rem;color:var(--duty-ink);opacity:0;visibility:hidden;pointer-events:none;background:#fff;border:1px solid #bdd7ea;border-radius:10px;gap:.14rem;padding:.55rem .65rem;font-size:.68rem;line-height:1.35;transition:opacity .14s,transform .14s,visibility .14s;display:grid;position:absolute;inset-block-start:calc(100% + .42rem);inset-inline-start:-.5rem;transform:translateY(-.2rem);box-shadow:0 10px 28px #10211f29}.shift-public-hours-tooltip strong{color:var(--info);font-size:.68rem}.shift-public-hours-tooltip span{color:var(--duty-muted);font-variant-numeric:normal;font-size:.64rem}.shift-public-hours:hover .shift-public-hours-tooltip,.shift-public-hours:focus-visible .shift-public-hours-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.planner-shift-title .shift-people-count{min-width:3.25rem;color:var(--duty-primary);white-space:nowrap;background:#f2fbf7;border:1px solid #d7e9e1;border-radius:10px;flex:none;justify-items:center;gap:.05rem;padding:.32rem .42rem;line-height:1;display:grid}.shift-people-count b{font-variant-numeric:tabular-nums;font-size:.82rem}.shift-people-count small{color:var(--duty-muted);font-size:.55rem;font-weight:700}.coverage-list{flex-wrap:wrap;gap:.3rem;display:flex}.coverage-list span{color:var(--duty-muted);background:var(--duty-subtle);border-radius:999px;padding:.24rem .4rem;font-size:.65rem;font-weight:750}.coverage-list .coverage-short{color:#7a3e00;background:#fff0d8}.coverage-list .coverage-ok{color:#1e694e;background:#e3f6ed}.coverage-list .coverage-over{color:var(--info);background:var(--info-bg)}.coverage-list .coverage-weekly-limit{color:var(--warning);border-color:var(--warning);background:var(--warning-bg);box-shadow:inset 0 0 0 1px #8a5a1224}.coverage-warning-badge{color:#fff;background:var(--warning);border-radius:50%;flex:none;place-items:center;width:1.1rem;height:1.1rem;display:inline-grid;box-shadow:0 1px 3px #8a5a123d}.coverage-warning-badge svg{width:.68rem;height:.68rem}.coverage-drop-list button{font:inherit;cursor:copy;border:1px dashed #0000}.coverage-drop-target{justify-content:center;align-items:center;min-height:2.75rem;display:inline-flex}.coverage-drop-list button:not(.is-disabled){border-color:currentColor}.coverage-drop-list button.is-disabled{cursor:not-allowed;opacity:.5}.coverage-drop-list button:not(.is-disabled):hover{box-shadow:0 0 0 2px #2d7d6a2e}.planning-warning{border-radius:8px;margin:0;padding:.38rem .45rem;font-size:.68rem;line-height:1.35}.warning-confirm,.warning-override{color:#7a3e00;background:#fff0d8}.warning-block{color:var(--danger);background:var(--danger-bg)}.warning-info{color:var(--duty-primary);background:var(--duty-accent)}.shift-status{justify-self:start}.shift-card-actions{gap:.35rem;display:grid}.shift-manage-button{width:100%;min-height:2.35rem;padding:.5rem;font-size:.7rem}.shift-card-actions .text-button{cursor:pointer;justify-self:start;padding:.25rem 0;font-size:.68rem}.shift-editor-backdrop{z-index:70;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10211f61;justify-content:flex-end;display:flex;position:fixed;inset:0}.shift-editor-drawer{border-left:1px solid var(--duty-border);background:#fff;grid-template-rows:auto 1fr auto;width:min(44rem,100vw - 2rem);height:100dvh;display:grid;overflow:hidden;box-shadow:-20px 0 60px #10211f33}.shift-editor-header{border-bottom:1px solid var(--duty-border);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.35rem;display:flex}.shift-editor-header h2{margin-bottom:.2rem}.shift-editor-header p{color:var(--duty-muted);margin-bottom:0;font-size:.8rem}.shift-editor-header .eyebrow{color:var(--duty-secondary)}.shift-editor-body{align-content:start;gap:1rem;padding:1.25rem 1.35rem;display:grid;overflow-y:auto}.shift-editor-section{border:1px solid var(--duty-border);background:#fff;border-radius:16px;gap:.9rem;padding:1rem;display:grid}.assignment-section{background:var(--duty-subtle)}.shift-editor-section .time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shift-editor-footer{border-top:1px solid var(--duty-border);background:var(--duty-subtle);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.35rem;display:flex}.shift-editor-footer p{color:var(--duty-muted);margin:0;font-size:.75rem}.people-picker{gap:.65rem;display:grid}.people-filter{gap:.3rem;margin:.7rem 0;display:grid}.people-filter span{color:var(--duty-muted);font-size:.75rem;font-weight:700}.person-assignment-card{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:12px;gap:.7rem;padding:.8rem;display:grid}.person-assignment-card.is-assigned,.staff-palette-list article.capacity-ok,.person-assignment-card.capacity-ok{background:#f2fbf7;border-color:#9ccfbc}.staff-palette-list article.capacity-near,.person-assignment-card.capacity-near{background:#fff9ec;border-color:#e7c77d}.staff-palette-list article.capacity-over,.person-assignment-card.capacity-over{background:#fff4f1;border-color:#e2a59d}.person-assignment-card.capacity-motivated{background:var(--info-bg);border-color:#bdd7ea}.capacity-indicator{border-left:3px solid var(--duty-border);gap:.08rem;padding-left:.45rem;display:grid}.capacity-indicator strong{color:var(--duty-muted);font-size:.68rem;line-height:1.25}.capacity-indicator span{color:var(--duty-muted);font-variant-numeric:tabular-nums;font-size:.65rem}.capacity-indicator.capacity-ok{border-left-color:var(--success)}.capacity-indicator.capacity-ok strong{color:var(--success)}.capacity-indicator.capacity-near{border-left-color:var(--warning)}.capacity-indicator.capacity-near strong{color:var(--warning)}.capacity-indicator.capacity-over{border-left-color:var(--danger)}.capacity-indicator.capacity-over strong{color:var(--danger)}.capacity-indicator.capacity-motivated{border-left-color:var(--info)}.capacity-indicator.capacity-motivated strong{color:var(--info)}.person-assignment-heading{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.person-assignment-heading>div{min-width:0;display:grid}.person-assignment-heading small{margin-top:.12rem}.assignment-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.assignment-heading-actions .button{min-height:2.25rem;padding:.42rem .65rem;font-size:.68rem}.assignment-unit-list{gap:.4rem;display:grid}.assignment-unit-list>span{color:var(--duty-muted);font-size:.7rem;font-weight:750}.assignment-unit-list>div{flex-wrap:wrap;gap:.4rem;display:flex}.assignment-unit-list label{border:1px solid var(--duty-border);color:var(--duty-primary);cursor:pointer;background:#fff;border-radius:999px;grid-template:none;align-items:center;gap:.35rem;padding:.42rem .62rem;display:inline-flex}.assignment-unit-list label:has(input:checked){border-color:var(--duty-secondary);background:var(--duty-accent)}.assignment-unit-list input{width:1rem;min-height:1rem;accent-color:var(--duty-primary);margin:0}.override-reason.is-resolved>span{color:var(--info)}.override-reason.is-resolved input{background:var(--info-bg);border-color:#bdd7ea}.physical-placement-list{border-top:1px solid var(--duty-border);gap:.45rem;padding-top:.7rem;display:grid}.physical-placement-list>span{color:var(--duty-muted);font-size:.7rem;font-weight:750}.physical-placement-unit{border:1px solid var(--duty-border);background:#fff;border-radius:10px;grid-template-columns:minmax(8rem,.7fr) minmax(0,1.3fr);align-items:start;gap:.7rem;padding:.65rem;display:grid}.physical-placement-unit>div:first-child{gap:.08rem;display:grid}.physical-placement-unit>div:first-child strong{font-size:.72rem}.physical-placement-unit>div:first-child small{color:var(--duty-muted);font-size:.64rem}.physical-placement-unit>div:last-child{flex-wrap:wrap;gap:.35rem;display:flex}.physical-placement-unit label{border:1px solid var(--duty-border);color:var(--duty-primary);cursor:pointer;border-radius:9px;align-items:center;gap:.3rem;padding:.35rem .5rem;font-size:.68rem;font-weight:700;display:inline-flex}.physical-placement-unit label:has(input:checked){border-color:var(--duty-secondary);background:var(--duty-accent)}.physical-placement-unit input{width:1rem;min-height:1rem;accent-color:var(--duty-primary);margin:0}.assignment-empty{border:1px dashed var(--duty-border);background:var(--duty-subtle);border-radius:12px;justify-items:start;gap:.45rem;padding:1rem;display:grid}.assignment-empty p{color:var(--duty-muted);margin:0;font-size:.78rem}.assignment-empty .button{margin-top:.25rem}.roster-archive{grid-template-columns:minmax(0,1fr);gap:.7rem;width:100%;min-width:0;max-width:100%;display:grid;overflow:hidden}.roster-archive .panel-heading{margin-bottom:.2rem}.roster-archive .panel-heading p{color:var(--duty-muted);margin:.2rem 0 0;font-size:.78rem}.roster-archive-list{grid-template-columns:minmax(0,1fr);gap:.45rem;min-width:0;display:grid}.roster-archive-list article{border:1px solid var(--duty-border);border-radius:12px;grid-template-columns:minmax(12rem,1fr) auto auto;align-items:center;gap:.75rem;min-width:0;padding:.7rem;display:grid}.roster-archive-list article.is-current{border-color:var(--duty-secondary);background:#f2fbf7}.roster-archive-list article>div{display:grid}.roster-archive-list article>div span,.current-roster-label{color:var(--duty-muted);font-size:.72rem}.roster-archive-list .button{min-height:2.25rem;padding:.4rem .7rem;font-size:.72rem}.roster-archive-actions{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.roster-archive-actions .button{white-space:nowrap}.planner-workspace{grid-template-columns:minmax(0,1fr) 19rem;align-items:start;gap:1rem;min-width:0;display:grid}.planner-calendar{min-width:0;overflow:auto visible}.dedicated-planner .week-grid{grid-template-columns:repeat(7,minmax(12rem,1fr))}.staff-palette{top:calc(var(--topbar-height) + .75rem);max-height:calc(100dvh - var(--topbar-height) - 1.5rem);border:1px solid var(--duty-border);box-shadow:var(--shadow);background:#fff;border-radius:18px;gap:.85rem;padding:1rem;display:grid;position:sticky;overflow:hidden}.staff-palette h2{margin-bottom:.2rem}.staff-palette p{color:var(--duty-muted);margin-bottom:0;font-size:.78rem}.staff-palette-list{gap:.5rem;padding-right:.15rem;display:grid;overflow-y:auto}.staff-palette-list article{border:1px solid var(--duty-border);background:var(--duty-subtle);cursor:grab;border-radius:12px;gap:.35rem;padding:.7rem;transition:opacity .15s,border-color .15s,transform .15s;display:grid}.staff-palette-list article:hover{border-color:var(--duty-secondary);transform:translateY(-1px)}.staff-palette-list article.is-dragging{opacity:.45;cursor:grabbing}.staff-palette-list article>div{display:grid}.staff-palette-list article span{color:var(--duty-muted);font-size:.7rem}.staff-palette-list article small{font-size:.67rem}.back-link{color:var(--duty-secondary);margin-bottom:1.25rem;font-size:.82rem;font-weight:750;display:inline-flex}.planning-page-header{margin-bottom:1.2rem}.add-shift-button{border:1px dashed var(--duty-secondary);width:100%;color:var(--duty-primary);font:inherit;cursor:pointer;background:0 0;border-radius:10px;padding:.5rem;font-size:.72rem;font-weight:750}.add-shift-menu{position:relative}.add-shift-menu>summary{text-align:center;list-style:none}.add-shift-menu>div{z-index:5;border:1px solid var(--duty-border);background:#fff;border-radius:10px;gap:.2rem;padding:.35rem;display:grid;position:absolute;inset:calc(100% + .3rem) 0 auto;box-shadow:0 10px 25px #0b3b3826}.add-shift-menu>div button{color:var(--duty-primary);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;gap:.5rem;padding:.5rem;font-size:.72rem;display:flex}.add-shift-menu>div button:hover{background:var(--duty-subtle)}.add-shift-menu>div span{color:var(--duty-muted)}.empty-day{color:var(--duty-muted);text-align:center;margin:2rem 0;font-size:.75rem}.availability-layout{grid-template-columns:minmax(0,1.1fr) minmax(20rem,.9fr)}.availability-rules,.constraint-list{gap:.5rem;margin-bottom:.75rem;display:grid}.availability-row{grid-template-columns:7rem 1fr auto 1fr auto;align-items:center;gap:.45rem;display:grid}.availability-exceptions{border-top:1px solid var(--duty-border);gap:.5rem;margin:1rem 0;padding-top:1rem;display:grid}.subsection-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.subsection-heading p{color:var(--duty-muted);margin:.15rem 0 0;font-size:.75rem}.availability-exception-row{grid-template-columns:9rem 10rem 1fr auto;align-items:center;gap:.45rem;display:grid}.constraint-row{border-bottom:1px solid var(--duty-border);grid-template-columns:minmax(10rem,1fr) 9rem auto;align-items:end;gap:.6rem;padding:.65rem 0;display:grid}.constraint-row>div{display:grid}.constraint-row>div span,.constraint-row small{color:var(--duty-muted);font-size:.7rem}.constraint-row>small{grid-column:2/-1}.manager-availability{grid-column:1/-1;padding-top:.35rem}.manager-availability>summary{color:var(--duty-primary);cursor:pointer;font-size:.75rem;font-weight:800}.manager-availability>p{color:var(--duty-muted);font-size:.72rem}.manager-availability[open]{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:12px;padding:.7rem}.availability-standard{background:#fff;border-radius:11px;gap:.65rem;margin-top:.8rem;padding:.75rem;display:grid}.availability-standard .availability-rules{margin-bottom:0}.availability-empty{border:1px dashed var(--duty-border);color:var(--duty-muted);text-align:center;border-radius:9px;margin:0;padding:.65rem;font-size:.7rem}.availability-save-bar{z-index:2;border:1px solid var(--duty-border);background:#fffffff5;border-radius:11px;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1rem;padding:.65rem .7rem;display:flex;position:sticky;bottom:.5rem;box-shadow:0 8px 22px #0b3b381a}.availability-save-bar p{margin:0;font-weight:700}.availability-save-bar.is-dirty{background:#fff9ec;border-color:#d39b43}.availability-save-bar.is-saved{background:#f1faf5;border-color:#79b99b}.availability-save-bar .button{flex:none}.availability-load-error{color:var(--duty-danger,#9a352f);background:#fcece9;border:1px solid #d9aaa4;border-radius:10px;justify-content:space-between;align-items:center;gap:.7rem;margin-top:.7rem;padding:.65rem;display:flex}.availability-load-error p,.availability-loading{margin:0;font-size:.72rem}.availability-loading{color:var(--duty-muted);padding:.75rem 0}.override-reason{width:100%;margin-top:.55rem!important;display:grid!important}.override-reason input{width:100%;min-height:2.4rem}.actual-workspace{gap:1.1rem}.actual-summary{border:1px solid var(--duty-border);background:#fff;border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden;box-shadow:0 8px 30px #10211f0a}.actual-summary button{border:0;border-right:1px solid var(--duty-border);min-width:0;color:var(--duty-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;grid-template:"label count""description description"/minmax(0,1fr) auto;align-items:center;gap:.12rem .75rem;padding:.9rem 1rem;display:grid}.actual-summary button:last-child{border-right:0}.actual-summary button:hover{background:var(--duty-subtle)}.actual-summary button.is-active{box-shadow:inset 0 3px 0 var(--duty-secondary);background:#f1faf6}.actual-summary button>span{color:var(--duty-secondary);grid-area:label;font-size:.72rem;font-weight:800}.actual-summary button>strong{font-variant-numeric:tabular-nums;grid-area:count;font-size:1.45rem}.actual-summary button>small{color:var(--duty-muted);text-overflow:ellipsis;white-space:nowrap;grid-area:description;font-size:.68rem;overflow:hidden}.actual-summary button:focus-visible{z-index:1;outline-offset:-3px;outline:3px solid #2d7d6a33;position:relative}.exception-board{border:1px solid var(--duty-border);background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 8px 30px #10211f0a}.exception-board-heading{border-bottom:1px solid var(--duty-border);background:var(--duty-subtle);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.exception-board-heading>div{gap:.05rem;display:grid}.exception-board-heading>div>strong{font-size:.9rem}.exception-board-heading span{color:var(--duty-muted);font-size:.7rem}.exception-groups{display:grid}.exception-day{border-bottom:1px solid var(--duty-border)}.exception-day:last-child{border-bottom:0}.exception-day>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) auto 1rem;align-items:center;gap:.8rem;min-height:3.7rem;padding:.7rem 1rem;list-style:none;display:grid}.exception-day>summary::-webkit-details-marker{display:none}.exception-day>summary:after{border-right:2px solid var(--duty-secondary);border-bottom:2px solid var(--duty-secondary);content:"";width:.48rem;height:.48rem;transition:transform .18s;transform:rotate(45deg)}.exception-day[open]>summary{background:#f5f1e88c}.exception-day[open]>summary:after{transform:rotate(225deg)}.exception-day>summary>div{gap:.05rem;min-width:0;display:grid}.exception-day>summary strong{text-transform:capitalize;font-size:.82rem}.exception-day>summary span:not(.count-pill){color:var(--duty-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.exception-day>summary:focus-visible{outline-offset:-3px;outline:3px solid #2d7d6a33}.exception-day-rows{border-top:1px solid var(--duty-border);padding:0 1rem}.exception-compact-row{border-bottom:1px solid var(--duty-border);grid-template-columns:1.8rem minmax(0,1fr);align-items:start;gap:.65rem;min-width:0;padding:.7rem 0;display:grid}.exception-compact-row:last-child{border-bottom:0}.exception-compact-icon{width:1.7rem;height:1.7rem;color:var(--warning);background:var(--warning-bg);border-radius:8px;place-items:center;display:grid}.exception-compact-icon svg{width:.9rem;height:.9rem}.exception-compact-row>div{min-width:0}.exception-compact-row strong{color:var(--duty-primary);margin-bottom:.08rem;font-size:.7rem;display:block}.exception-compact-row p{color:var(--duty-muted);overflow-wrap:anywhere;margin:0;font-size:.76rem}.exception-filter-empty{border:1px dashed var(--duty-border);color:var(--success);background:var(--success-bg);border-radius:14px;align-items:center;gap:.75rem;margin:1rem;padding:1rem;display:flex}.exception-filter-empty svg{flex:none;width:1.35rem;height:1.35rem}.exception-filter-empty p{color:var(--duty-muted);margin:.12rem 0 0;font-size:.76rem}.actual-empty strong{margin-bottom:.2rem}.actual-empty p{margin:0}.actual-review{min-width:0;margin-top:.1rem}.actual-review .reconciliation-panel{margin:0}.actual-review .control-shift-list{gap:0;padding:0}.actual-review .control-shift{border:0;border-bottom:1px solid var(--duty-border);background:#fff;border-radius:0;grid-template-columns:minmax(12rem,1fr) auto;padding:.85rem 1rem}.actual-review .control-shift:last-child{border-bottom:0}.danger-text{color:var(--duty-danger,#9a352f)}.danger{color:var(--danger)}.location-space-link{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:12px;justify-content:space-between;align-items:center;gap:1rem;margin:.9rem 0;padding:.8rem;display:flex}.location-space-link p{color:var(--duty-muted);margin:.15rem 0 0;font-size:.75rem}.location-space-editor{gap:1rem;display:grid}.button-row,.scene-editor-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.scene-empty-setup{justify-items:stretch;gap:1rem;width:min(100%,58rem);padding:clamp(1.35rem,3vw,2rem);display:grid}.scene-empty-heading{max-width:46rem}.scene-empty-heading .eyebrow{margin-bottom:.6rem}.scene-empty-heading h2{margin-bottom:.4rem}.scene-empty-heading p:last-child{color:var(--duty-muted);margin:0}.scene-empty-name{width:min(100%,26rem)}.scene-empty-description{width:100%}.scene-empty-description textarea{min-height:10rem}.scene-empty-actions{justify-content:flex-start;padding-top:.1rem}.scene-editor-toolbar{border:1px solid var(--duty-border);background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.scene-editor-toolbar h2,.scene-editor-toolbar p{margin:.15rem 0 0}.scene-editor-toolbar p:last-child{max-width:52rem;color:var(--duty-muted);font-size:.76rem}.scene-editor-draft-state{color:var(--duty-muted);white-space:nowrap;font-weight:700;margin:0!important;font-size:.7rem!important}.scene-published-state{min-width:15rem;color:var(--success);background:var(--success-bg);border:1px solid #b8ddc9;border-radius:12px;align-items:center;gap:.65rem;padding:.62rem .75rem;display:flex}.scene-published-state svg{width:1rem;height:1rem}.scene-published-state>div{flex-direction:column;gap:.1rem;display:flex}.scene-published-state strong,.scene-published-state small{white-space:nowrap;display:block}.scene-published-state strong{font-size:.72rem;line-height:1.3}.scene-published-state small{color:inherit;opacity:.82;font-size:.62rem;line-height:1.35}.scene-unsaved-banner{color:#70441f;background:#fff7eb;border:1px solid #e6c296;border-radius:14px;grid-template-columns:1.35rem minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.75rem .9rem;display:grid}.scene-unsaved-banner svg{width:1.2rem;height:1.2rem}.scene-unsaved-banner>div{gap:.08rem;display:grid}.scene-unsaved-banner strong{font-size:.78rem}.scene-unsaved-banner span{font-size:.68rem}.scene-editor-grid{grid-template-columns:minmax(18rem,24rem) minmax(0,1fr);gap:1rem;display:grid}.physical-area-editor{align-items:start}.scene-editor-controls,.scene-editor-preview{min-width:0}.scene-editor-controls{align-content:start;gap:.75rem;display:grid}.scene-editor-controls>label,.physical-area-fields label,.duty-ai-layout label{gap:.3rem;display:grid}.scene-editor-controls label>span,.physical-area-fields label>span,.duty-ai-layout label>span{color:var(--duty-muted);font-size:.7rem;font-weight:750}.scene-editor-controls textarea,.duty-ai-layout textarea{resize:vertical;min-height:5.5rem}.speech-textarea{width:100%;position:relative}.speech-textarea textarea{padding-bottom:3.8rem;display:block}.speech-textarea.is-listening textarea{border-color:var(--duty-secondary);box-shadow:0 0 0 3px #2d7d6a21}.speech-button{border:1px solid var(--duty-border);min-height:2.3rem;color:var(--duty-primary);font:inherit;background:#fffffff0;border-radius:10px;align-items:center;gap:.4rem;padding:.45rem .7rem;font-size:.68rem;font-weight:750;display:inline-flex;position:absolute;bottom:.65rem;right:.65rem;box-shadow:0 3px 10px #10211f12}.speech-button:hover{border-color:var(--duty-secondary)}.speech-button[aria-pressed=true]{color:#fff;border-color:var(--duty-primary);background:var(--duty-primary)}.speech-button svg{width:1rem;height:1rem}.speech-status{min-height:1rem;color:var(--duty-muted);font-size:.64rem;font-weight:550}.physical-area-heading,.panel-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.physical-area-heading h3,.panel-heading h3{margin:.1rem 0 0}.physical-area-list{gap:.35rem;max-height:15rem;display:grid;overflow:auto}.physical-area-list>button{border:1px solid var(--duty-border);color:var(--duty-ink);text-align:left;font:inherit;background:#fff;border-radius:10px;grid-template-columns:.65rem 1fr;gap:.1rem .55rem;padding:.55rem;display:grid}.physical-area-list>button>span{border-radius:5px;grid-row:1/3;width:.65rem;height:100%}.physical-area-list>button small{color:var(--duty-muted);font-size:.65rem}.physical-area-list>button.is-selected{border-color:var(--duty-secondary);box-shadow:0 0 0 2px #2d7d6a1f}.physical-area-fields{border:1px solid var(--duty-border);border-radius:12px;gap:.65rem;padding:.75rem;display:grid}.physical-area-fields legend{padding:0 .25rem;font-size:.72rem;font-weight:800}.field-row{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.duty-ai-layout{border-top:1px solid var(--duty-border);gap:.55rem;margin-top:.25rem;padding-top:.85rem;display:grid}.duty-ai-layout .eyebrow{margin:0}.duty-ai-complete{color:#165c4a;background:#e7f8ef;border:1px solid #a9dfc3;border-radius:10px;grid-template-columns:1.35rem 1fr;align-items:center;gap:.05rem .5rem;margin:0;padding:.65rem .7rem;display:grid}.duty-ai-complete svg{grid-row:1/3;width:1.2rem;height:1.2rem}.duty-ai-complete strong{font-size:.78rem}.duty-ai-complete span{font-size:.68rem}.scene-editor-workspace{gap:1rem;min-width:0;display:grid}.physical-plan-panel{min-width:0}.panel-heading small{color:var(--duty-muted);font-size:.68rem}.physical-plan-help{color:var(--duty-muted);margin:.55rem 0 0;font-size:.68rem}.physical-plan-tools{align-items:center;gap:.35rem;display:flex}.physical-plan-tools button{border:1px solid var(--duty-border);min-height:2rem;color:var(--duty-primary);font:inherit;background:#fff;border-radius:8px;padding:.3rem .55rem;font-size:.68rem;font-weight:750}.physical-plan-tools span{min-width:2.8rem;color:var(--duty-muted);text-align:center;font-size:.66rem}.physical-plan-scroll{overscroll-behavior:contain;border:1px solid var(--duty-border);cursor:grab;scrollbar-color:var(--duty-secondary) transparent;touch-action:none;background:#ede8de;border-radius:14px;height:31rem;margin-top:.75rem;overflow:auto}.physical-plan-scroll[data-panning=true]{cursor:grabbing}.physical-plan-world{position:relative}.physical-plan{transform-origin:0 0;background-color:#f5f1e8;background-image:linear-gradient(#2d7d6a1c 1px,#0000 1px),linear-gradient(90deg,#2d7d6a1c 1px,#0000 1px);background-size:16px 16px;position:absolute;top:0;left:0}.physical-plan:before{content:"";pointer-events:none;border-left:1px solid #0b3b3847;position:absolute;top:0;bottom:0;left:50%}.physical-plan:after{content:"";pointer-events:none;border-top:1px solid #0b3b3847;position:absolute;top:50%;left:0;right:0}.physical-plan-area{color:#10211f;touch-action:none;-webkit-user-select:none;user-select:none;font:inherit;transform-origin:50%;border:2px solid #0b3b3873;border-radius:8px;align-content:center;justify-items:center;display:grid;position:absolute;overflow:hidden;box-shadow:0 4px 12px #0b3b381a}.physical-plan-area strong{text-overflow:ellipsis;white-space:nowrap;max-width:90%;font-size:.72rem;overflow:hidden}.physical-plan-area small{font-size:.6rem}.physical-plan-area.is-selected{outline-offset:2px;outline:3px solid #0b3b38}.physical-plan-area.has-collision{background-image:repeating-linear-gradient(135deg,#0000 0 8px,#c46b2d24 8px 14px);border-color:#c46b2d}.physical-rotate-handle{cursor:grab;background:#fff;border:2px solid #0b3b38;border-radius:50%;width:.85rem;height:.85rem;position:absolute;top:.18rem;left:50%;transform:translate(-50%)}.physical-rotate-handle:after{content:"";border-left:2px solid #0b3b38;height:.42rem;position:absolute;bottom:-.42rem;left:50%;transform:translate(-50%)}.physical-resize-handle{cursor:nwse-resize;background:#0b3b38;border-radius:8px 0 5px;width:1.1rem;height:1.1rem;position:absolute;bottom:0;right:0}.collision-warning{color:#7a461f;background:#fff3e8;border-radius:9px;margin:.65rem 0 0;padding:.6rem;font-size:.7rem}.scene-editor-workspace .scene-preview-canvas,.scene-editor-workspace .scene-preview-canvas canvas{min-height:22rem}.scene-history{gap:1rem;display:grid}.scene-history-heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.scene-history-heading h3{margin:.1rem 0 0}.scene-history-heading>p{max-width:30rem;color:var(--duty-muted);text-align:right;margin:0;font-size:.72rem}.scene-history ol{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.scene-history li{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:12px;grid-template-columns:3.2rem minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.7rem .8rem;display:grid}.scene-history-version{color:var(--duty-primary);font-variant-numeric:tabular-nums;font-size:.78rem}.scene-history li>div{gap:.08rem;display:grid}.scene-history li>div>strong{font-size:.75rem}.scene-history time{color:var(--duty-muted);font-variant-numeric:tabular-nums;font-size:.66rem}.scene-history-status{white-space:nowrap;border-radius:999px;align-items:center;padding:.3rem .55rem;font-size:.64rem;font-weight:750;display:inline-flex}.scene-history-status.is-published{color:#17623f;background:#e4f7ec}.scene-history-status.is-draft{color:var(--duty-muted);border:1px solid var(--duty-border);background:#fff}.stack-form{gap:.75rem;display:grid}.stack-form label,.visual-profile-actions label{gap:.3rem;display:grid}.stack-form label>span,.visual-profile-actions label>span{color:var(--duty-muted);font-size:.72rem;font-weight:750}.compact-check{grid-template-columns:auto 1fr;align-items:center;display:flex!important}.compact-check input{width:1rem;min-height:1rem}.scene-editor-notice{min-height:2.5rem;color:var(--duty-muted);background:var(--duty-subtle);border-radius:10px;margin:.85rem 0 0;padding:.7rem;font-size:.76rem}.scene-editor-notice.is-error{color:#8e2f29;background:#fff0ee}.scene-editor-notice.is-success{color:#165c4a;background:#e7f8ef}.scene-preview-canvas{border:1px solid var(--duty-border);background:var(--duty-canvas);border-radius:16px;min-height:34rem;overflow:hidden}.scene-preview-canvas canvas{min-height:34rem}.visual-profile-editor{gap:1rem;min-width:0;display:grid}.visual-profile-current{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:16px;grid-template-columns:minmax(13rem,20rem) minmax(0,1fr);align-items:center;gap:1rem;min-width:0;padding:.8rem;display:grid}.visual-profile-current>div:last-child{gap:.2rem;display:grid}.visual-profile-current .eyebrow{margin:0}.visual-profile-current strong{font-size:1.05rem}.visual-profile-current small{color:var(--duty-muted);font-size:.72rem}.visual-profile-stage{background:radial-gradient(circle at 50% 46%,#fff 0 25%,#e8f0ed 78%);border-radius:12px;min-width:0;height:7.5rem;display:block;overflow:hidden}.visual-profile-stage.is-large{border:1px solid #2d7d6a2e;height:15rem}.visual-profile-stage canvas{pointer-events:none}.avatar-preset-picker{border:0;min-width:0;margin:0;padding:0}.avatar-preset-picker legend{margin-bottom:.55rem;font-size:.76rem;font-weight:800}.avatar-preset-picker>div{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.65rem;display:grid}.avatar-preset-picker button{border:1px solid var(--duty-border);min-width:0;color:var(--duty-ink);text-align:left;font:inherit;cursor:pointer;background:#fff;border-radius:14px;gap:.35rem;padding:.45rem;display:grid}.avatar-preset-picker button:hover{border-color:var(--duty-secondary)}.avatar-preset-picker button.is-selected{border-color:var(--duty-primary);box-shadow:0 0 0 3px #2d7d6a24}.avatar-preset-picker button>strong{text-overflow:ellipsis;white-space:nowrap;padding-inline:.2rem;font-size:.72rem;overflow:hidden}.avatar-preset-picker button>span:last-child{min-height:1rem;color:var(--duty-muted);align-items:center;gap:.22rem;padding-inline:.2rem;font-size:.62rem;font-weight:700;display:flex}.avatar-preset-picker .avatar-preset-check{color:var(--success)}.avatar-preset-check svg{width:.8rem;height:.8rem}.visual-profile-actions{flex-wrap:wrap;align-items:end;gap:.65rem;display:flex}.visual-profile-actions label{min-width:min(100%,26rem)}.visual-profile-status{min-height:1rem;color:var(--success);align-self:center;font-size:.7rem}.visual-profile-help{color:var(--duty-muted);font-size:.7rem}.space-avatar{position:relative}.space-avatar small{color:#fff;background:var(--duty-secondary);border-radius:50%;place-items:center;width:1rem;height:1rem;font-size:.55rem;display:grid;position:absolute;bottom:-.2rem;right:-.2rem}.space-avatar.preset-chef{color:var(--duty-primary);background:#eef1ef}.space-avatar.preset-service,.space-avatar.preset-manager{background:var(--duty-primary);color:#fff}.space-avatar.preset-bar,.space-avatar.preset-kitchen{background:var(--duty-secondary);color:#fff}.space-avatar.preset-cleaning{color:#fff;background:#5c7f91}.space-avatar.preset-cashier{background:var(--duty-accent);color:var(--duty-primary)}@media (max-width:1100px){.week-grid{grid-template-columns:repeat(7,minmax(9.5rem,1fr))}.availability-layout{grid-template-columns:1fr}.planner-workspace{grid-template-columns:minmax(0,1fr) 16rem}.scene-editor-grid{grid-template-columns:1fr}}@media (max-width:860px){.workforce-tabs{top:calc(var(--topbar-height) + .25rem)}.section-intro,.planner-toolbar{flex-direction:column;align-items:stretch}.actual-summary{grid-template-columns:1fr}.actual-summary button{border-right:0;border-bottom:1px solid var(--duty-border)}.actual-summary button:last-child{border-bottom:0}.actual-review .control-shift{grid-template-columns:1fr}.planner-actions{justify-items:stretch}.planner-primary-actions{justify-content:stretch}.planner-primary-actions>*{flex:auto}.week-create-form,.requirements-editor{grid-template-columns:1fr}.mobile-day-switch{grid-auto-columns:minmax(4.5rem,1fr);grid-auto-flow:column;gap:.3rem;display:grid;overflow-x:auto}.mobile-day-switch button{border:1px solid var(--duty-border);color:var(--duty-muted);font:inherit;background:#fff;border-radius:10px;justify-items:center;padding:.45rem;font-size:.68rem;display:grid}.mobile-day-switch button.is-active{border-color:var(--duty-primary);color:#fff;background:var(--duty-primary)}.week-grid{display:block;overflow:visible}.planner-workspace{grid-template-columns:1fr;display:grid}.planner-calendar{overflow:visible}.dedicated-planner .week-grid{display:block;overflow:visible}.staff-palette{grid-row:1;max-height:none;position:static}.staff-palette-list{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));max-height:18rem}.planner-day{display:none}.planner-day.is-mobile-active{display:grid}.time-grid{grid-template-columns:1fr 1fr}.time-grid .checkbox-line{grid-column:1/-1}.sticky-save-bar{align-items:center;bottom:5.7rem}.sticky-save-bar .button{flex:none}.standard-shift-heading{flex-direction:column;align-items:stretch}.availability-row{grid-template-columns:6rem 1fr 1fr auto}.availability-exception-row{grid-template-columns:1fr 1fr auto}.availability-exception-row input:nth-of-type(2){grid-column:1/3}.availability-row>span{display:none}.constraint-row{grid-template-columns:1fr 8rem}.constraint-row .button{grid-column:1/-1}.scene-preview-canvas,.scene-preview-canvas canvas{min-height:26rem}.visual-profile-actions .button{width:100%}.unstaffed-panel .control-shift{grid-template-columns:1fr;align-items:stretch}.unstaffed-panel .inline-form{justify-content:flex-start}}@media (max-width:620px){.scene-empty-actions{flex-direction:column;align-items:stretch}.scene-empty-actions .button{width:100%}.scene-history-heading{flex-direction:column;align-items:start}.scene-history-heading>p{text-align:left}.scene-history li{grid-template-columns:2.7rem minmax(0,1fr)}.scene-history-status{grid-column:2;justify-self:start}.assignment-heading-actions{flex-direction:column;align-items:stretch;width:100%}.assignment-heading-actions .count-pill{align-self:flex-start}.assignment-heading-actions .button{width:100%}.physical-placement-unit,.visual-profile-current{grid-template-columns:1fr}.visual-profile-stage.is-large{height:13rem}.standard-plan-overview{gap:.45rem}.standard-plan-overview>div{flex-direction:column;align-items:flex-start;gap:.2rem;padding:.65rem}.standard-plan-overview span{font-size:.67rem}.standard-shift-summary{grid-template-columns:1fr}.standard-shift-toggle{grid-template-columns:2.35rem minmax(0,1fr) auto;padding-bottom:.65rem}.standard-shift-status{grid-column:2;justify-self:start}.standard-shift-chevron{grid-area:1/3/3}.standard-shift-remove{justify-self:start;margin:0 1rem .65rem 4.15rem}.standard-editor-heading{grid-template-columns:2rem minmax(0,1fr);align-items:start}.standard-requirement-total{grid-column:2;justify-self:start}.standard-shift-body{padding:.75rem}.standard-editor-section{padding:.85rem}}@media (max-width:520px){.time-grid,.shift-editor-section .time-grid{grid-template-columns:1fr}.time-grid .checkbox-line{grid-column:1}.requirement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-row{grid-template-columns:1fr 1fr}.availability-row select{grid-column:1/-1}.shift-editor-drawer{width:100vw}.shift-editor-header,.shift-editor-body,.shift-editor-footer{padding-inline:1rem}.shift-editor-footer{flex-direction:column;align-items:stretch}.shift-editor-footer .button{width:100%}.person-assignment-heading{flex-direction:column;align-items:stretch}.person-assignment-heading .status{align-self:flex-start}.roster-archive-list article{grid-template-columns:1fr auto}.roster-archive-list article>.status{justify-self:end}.roster-archive-actions{grid-column:1/-1;width:100%}.roster-archive-actions .button{flex:1}.sticky-save-bar{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;padding:.55rem;display:grid}.sticky-save-bar .save-state{min-width:0;font-size:.7rem;overflow:hidden}.sticky-save-bar .button{min-height:2.75rem;padding:.55rem .7rem;font-size:.78rem}}.grant-editor{gap:1rem;display:grid}.grant-editor-lock{border:0;min-width:0;margin:0;padding:0}.grant-card{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:18px;gap:1rem;min-width:0;padding:1rem;display:grid}.grant-card>legend,.grant-options>legend{color:var(--duty-primary);padding:0 .35rem;font-size:.78rem;font-weight:800}.grant-card-heading{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem;display:grid}.grant-card-heading label,.grant-scope-grid label{gap:.35rem;display:grid}.grant-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.grant-options{border:0;min-width:0;padding:0}.grant-options>div{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.5rem;display:grid}.grant-options label,.responsibility-picker label{border:1px solid var(--duty-border);background:#fff;border-radius:12px;align-items:center;gap:.65rem;min-height:2.8rem;padding:.65rem .75rem;display:flex}.grant-options input,.responsibility-picker input{width:1rem;height:1rem;accent-color:var(--duty-secondary);flex:none}.grant-add{justify-self:start}.responsibility-summary-list{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.65rem;display:grid}.responsibility-summary-list>div{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:12px;gap:.12rem;padding:.75rem;display:grid}.responsibility-summary-list span{color:var(--duty-muted);font-size:.78rem}.responsibility-picker{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.6rem;display:grid}.responsibility-picker label>span{gap:.08rem;min-width:0;display:grid}.responsibility-picker small{color:var(--duty-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.responsibility-shifts{margin-top:1.5rem}.organization-tree{margin-top:1.25rem}.organization-root{border:1px solid var(--duty-border);background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 12px 36px #10211f0f}.organization-root-heading{color:#fff;background:var(--duty-primary);align-items:center;gap:.85rem;padding:1.2rem 1.35rem;display:flex}.organization-root-heading h2,.organization-root-heading p{margin:0}.organization-root-heading .eyebrow{color:var(--duty-accent)}.tree-mark{background:radial-gradient(circle at center,var(--duty-accent) 0 18%,transparent 20%),linear-gradient(90deg,transparent 47%,#b9f5d873 48% 52%,transparent 53%);border:1px solid #b9f5d873;border-radius:14px;flex:none;width:2.5rem;height:2.5rem}.organization-branches,.tree-children{gap:.65rem;padding:.9rem;display:grid}.tree-children{border-left:2px solid #2d7d6a33;margin-left:1rem;padding:.65rem 0 .65rem 1rem}.tree-node{border:1px solid var(--duty-border);background:#fff;border-radius:14px;min-width:0}.tree-node>summary{grid-template-columns:minmax(0,1fr) 1rem;align-items:center;gap:.75rem;min-height:3.4rem;padding:.7rem .9rem;list-style:none;display:grid}.tree-node>summary::-webkit-details-marker{display:none}.tree-node>summary:after{border-right:2px solid var(--duty-secondary);border-bottom:2px solid var(--duty-secondary);content:"";width:.5rem;height:.5rem;transition:transform .18s;transform:rotate(45deg)}.tree-node[open]>summary:after{transform:rotate(225deg)}.tree-node[open]>summary{border-bottom:1px solid var(--duty-border);background:var(--duty-subtle)}.tree-node>summary>span{gap:.08rem;min-width:0;display:grid}.tree-node>summary strong{overflow-wrap:anywhere}.tree-node>summary small{color:var(--duty-muted);font-size:.72rem}.tree-entity{border-color:#2d7d6a59}.tree-unit{background:var(--duty-subtle)}.tree-people-content{gap:.75rem;padding:.8rem;display:grid}.tree-people-content>.button{justify-self:start}.tree-person-list{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:.65rem;display:grid}.tree-person{border:1px solid var(--duty-border);background:#fff;border-radius:14px;align-content:start;gap:.5rem;min-width:0;padding:.8rem;display:grid}.tree-person>div:first-child{gap:.08rem;display:grid}.tree-person small,.tree-person p{overflow-wrap:anywhere;color:var(--duty-muted);font-size:.72rem}.tree-person p{margin:0}.tree-person .chip{padding:.3rem .5rem;font-size:.66rem}.person-skills{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.person-skills>strong{width:100%;color:var(--duty-muted);font-size:.7rem}.person-skills form{border-top:1px solid var(--duty-border);gap:.65rem;width:100%;padding-top:.65rem;display:grid}.person-skills fieldset{border:0;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.4rem;min-width:0;padding:0;display:grid}.person-skills label{align-items:center;gap:.45rem;font-size:.76rem;display:flex}.sidebar-skills{color:var(--duty-muted);margin-top:.45rem;font-size:.72rem}.sidebar-skills summary{cursor:pointer;font-weight:700}.sidebar-skills ul{gap:.2rem;margin:.4rem 0 0;padding-left:1.1rem;display:grid}.skill-coverage-list{gap:.45rem;margin-top:.6rem;display:grid}.skill-coverage-list>div{border:1px solid var(--duty-border);background:var(--duty-subtle);border-radius:10px;gap:.2rem;padding:.55rem .65rem;display:grid}.skill-coverage-list p{margin:0;font-size:.74rem}@media (max-width:720px){.grant-card-heading,.grant-scope-grid{grid-template-columns:1fr}.grant-card-heading .button,.grant-add{width:100%}.organization-branches{padding:.65rem}.tree-children{margin-left:.35rem;padding-left:.6rem}.tree-person-list,.responsibility-picker{grid-template-columns:1fr}}
