:root{--bg: #091013;--panel: #111b1f;--panel-2: #162329;--surface-raw: 12, 21, 24;--line: #263941;--line-hot: #43f0bd;--text: #edf8f7;--muted: #8aa2a8;--amber: #f0b743;--red: #ff5c6c;--blue: #6aa7ff;--green: #43f0bd;--shadow: 0 20px 50px rgba(0, 0, 0, .32)}body[data-theme=light]{--bg: #dfe8e6;--panel: #edf3f1;--panel-2: #d2dedc;--surface-raw: 237, 243, 241;--line: #aebfbe;--line-hot: #087b6c;--text: #142528;--muted: #5f7173;--amber: #875900;--red: #b62538;--blue: #245ebc;--green: #087b6c;--shadow: 0 18px 38px rgba(26, 49, 54, .12)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(90deg,rgba(67,240,189,.06) 1px,transparent 1px),linear-gradient(rgba(67,240,189,.05) 1px,transparent 1px),radial-gradient(circle at 78% 8%,rgba(240,183,67,.16),transparent 28rem),var(--bg);background-size:42px 42px,42px 42px,auto,auto;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}body[data-theme=light]{background:linear-gradient(90deg,rgba(8,123,108,.07) 1px,transparent 1px),linear-gradient(rgba(8,123,108,.06) 1px,transparent 1px),radial-gradient(circle at 78% 8%,rgba(135,89,0,.1),transparent 28rem),var(--bg);background-size:42px 42px,42px 42px,auto,auto}button{color:inherit;font:inherit}.shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{border-right:1px solid var(--line);background:rgba(var(--surface-raw),.88);padding:24px 18px;display:flex;flex-direction:column;gap:28px}.brand,.system-state,.operator,.top-actions,.panel-head,.tablet header,.tablet-progress{display:flex;align-items:center;justify-content:space-between;gap:14px}.top-actions{align-items:stretch}.brand{justify-content:flex-start}.brand-mark{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line-hot);background:var(--panel-2);color:var(--green);font-weight:900}.brand span,.system-state span,.operator span,.metric span,.metric em,.eyebrow,.flow-step em,.tablet header span,.material-meta,.row-meta{color:var(--muted);font-size:12px;font-style:normal}.nav-list{display:grid;gap:8px}.nav-item{border:1px solid transparent;background:transparent;color:var(--muted);padding:13px 14px;text-align:left;cursor:pointer}.nav-item:hover,.nav-item.active{border-color:var(--line);background:var(--panel);color:var(--text)}.system-state{margin-top:auto;justify-content:flex-start;border:1px solid var(--line);background:var(--panel);padding:14px}.pulse{width:12px;height:12px;background:var(--green);box-shadow:0 0 20px var(--green)}.workspace{padding:26px;overflow:hidden}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-panel{width:min(100%,520px);display:grid;gap:18px}.login-brand{justify-content:flex-start}.login-form{grid-template-columns:1fr;margin-top:0}.reset-form{grid-template-columns:minmax(0,1fr) auto;margin-top:8px}.pin-pad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pin-pad button{min-height:58px;font-size:22px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.eyebrow{margin:0 0 6px;text-transform:uppercase;letter-spacing:.12em}h1,h2,p{margin:0}h1{font-size:clamp(28px,4vw,48px);line-height:1}h2{font-size:18px}.operator{border:1px solid var(--line);background:var(--panel);padding:12px 16px;min-width:190px}.theme-toggle{border:1px solid var(--line);background:var(--panel);color:var(--text);min-width:128px;padding:0 14px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.theme-toggle:hover{border-color:var(--line-hot)}.theme-icon{color:var(--green);font-size:18px;line-height:1}.view{display:none}.view.active{display:block}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.metric,.panel,.tablet{border:1px solid var(--line);background:linear-gradient(180deg,rgba(var(--surface-raw),.96),rgba(var(--surface-raw),.9));box-shadow:var(--shadow)}.metric{padding:18px;min-height:124px;display:grid;align-content:space-between;position:relative;overflow:hidden}.metric:before,.panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(67,240,189,.12),transparent 38%);opacity:0}.metric.hot:before,.metric.danger:before{opacity:1}.metric strong{font-size:34px;line-height:1}.metric.danger strong{color:var(--red)}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);gap:14px;margin-bottom:14px}.panel{padding:18px;position:relative}.panel-head{margin-bottom:18px}.panel-actions{display:flex;align-items:center;gap:8px}.icon-button,.primary-button,.secondary-button,.danger-button{border:1px solid var(--line);background:var(--panel);min-height:40px;padding:0 14px;cursor:pointer}.icon-button{width:42px;padding:0;font-size:22px}.primary-button{background:var(--panel-2);border-color:#43f0bd80;color:var(--green);font-weight:800}.secondary-button{color:var(--muted);font-weight:800}.secondary-button:hover{border-color:var(--line-hot);color:var(--text)}.danger-button{background:#ff5c6c14;border-color:#ff5c6c6b;color:var(--red);font-weight:800}.danger-button:hover{background:#ff5c6c24;border-color:#ff5c6cb8}.station-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.station-card{border:1px solid var(--line);background:rgba(var(--surface-raw),.82);padding:12px;min-height:132px;display:grid;gap:10px}.station-card strong{font-size:16px}.station-card small{color:var(--muted)}.bar{height:8px;background:var(--panel-2);overflow:hidden}.bar>span,.progress-track>div{display:block;height:100%;background:var(--green)}.status-pill{border:1px solid var(--line);padding:6px 10px;font-size:12px;font-weight:800;text-transform:uppercase}.status-pill.running,.station-card.running .status-pill{color:var(--green);border-color:#43f0bd8c}.status-pill.alert{color:var(--red);border-color:#ff5c6c8c}.status-pill.pause,.station-card.pause .status-pill{color:var(--amber);border-color:#f0b7438c}.station-card.alert .status-pill{color:var(--red);border-color:#ff5c6c8c}.alert-list,.materials-list,.order-board{display:grid;gap:10px}.alert-item,.material-item,.order-card{border-left:3px solid var(--amber);background:rgba(var(--surface-raw),.82);padding:12px}.alert-item.danger,.material-item.danger{border-color:var(--red)}.alert-item strong,.material-item strong,.order-card strong{display:block;margin-bottom:4px}.flow-panel{overflow:hidden}.process-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.flow-step{border:1px solid var(--line);background:rgba(var(--surface-raw),.82);min-height:96px;padding:14px;display:grid;gap:8px}.flow-step span{color:var(--blue);font-weight:900}.flow-step.done{border-color:#43f0bd80}.flow-step.active{border-color:#f0b743bf;box-shadow:inset 0 0 0 1px #f0b74340}.table{display:grid;border:1px solid var(--line)}.table-row{display:grid;grid-template-columns:.8fr 1.1fr 1fr .8fr .6fr;gap:14px;padding:14px;border-bottom:1px solid var(--line);align-items:center}.table-row:last-child{border-bottom:0}.table-row.header{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.order-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;border-left-color:var(--green)}.catalog-layout{display:grid;grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);gap:14px}.dictionary-layout{display:grid;grid-template-columns:minmax(260px,.52fr) minmax(0,1.48fr);gap:14px}.dictionary-side{align-self:start}.dictionary-tabs,.dictionary-records{display:grid;gap:8px}.dictionary-records{grid-template-columns:repeat(2,minmax(0,1fr))}.business-section{border-top:1px solid var(--line);display:grid;gap:10px;margin-top:18px;padding-top:18px}.compact-head{margin-bottom:0}.business-list{display:grid;gap:8px}.business-row{border:1px solid var(--line);background:rgba(var(--surface-raw),.62);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) auto;gap:10px;align-items:center;min-height:52px;padding:10px 12px}.business-row span{color:var(--muted);font-size:12px}.inline-form{display:grid;grid-template-columns:minmax(180px,1fr) 110px 110px auto;gap:8px}.inline-form input,.inline-form select{border:1px solid var(--line);background:rgba(var(--surface-raw),.74);color:var(--text);min-height:40px;padding:0 11px}.mini-action{min-height:34px;padding:0 10px}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.record-list{display:grid;gap:8px}.catalog-status{border:1px solid var(--line);background:rgba(var(--surface-raw),.52);color:var(--muted);font-size:12px;font-weight:800;margin-bottom:10px;padding:9px 11px}.warning-status{border-color:#f0b7438c;color:var(--amber)}.record-item{border:1px solid var(--line);background:rgba(var(--surface-raw),.68);color:var(--text);min-height:68px;padding:12px;text-align:left;cursor:pointer}.record-item:hover,.record-item.active{border-color:var(--line-hot);background:var(--panel-2)}.record-item strong,.record-item span{display:block}.record-item span{color:var(--muted);font-size:12px;margin-top:5px}.detail-panel{min-height:430px}.detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.detail-hero h2{font-size:clamp(28px,4vw,46px);line-height:1}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.detail-grid>div{border:1px solid var(--line);background:rgba(var(--surface-raw),.62);min-height:92px;padding:14px;display:grid;align-content:space-between}.detail-grid span{color:var(--muted);font-size:12px}.detail-grid strong{font-size:22px}.timeline-strip,.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.timeline-strip span,.chip-row span{border:1px solid var(--line);background:var(--panel-2);padding:9px 11px;color:var(--text);font-size:13px;font-weight:800}.edit-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.edit-form label{color:var(--muted);display:grid;gap:7px;font-size:12px;font-weight:800;text-transform:uppercase}.edit-form input,.edit-form select{border:1px solid var(--line);background:rgba(var(--surface-raw),.74);color:var(--text);min-height:42px;padding:0 11px;outline:none}.multi-select-field{display:grid;align-content:start;gap:8px;min-width:0}.planning-note{padding:12px;border:1px solid var(--line);background:var(--panel-2);font-size:13px;line-height:1.6}.resource-warning{display:block;margin-top:4px;color:var(--amber);font-size:12px}.edit-form .planning-confirm{display:flex;align-items:center;gap:10px;text-transform:none;color:var(--amber)}.edit-form .planning-confirm input{min-height:20px;width:20px;accent-color:var(--green)}.multi-select-label{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.multi-select-box{display:grid;gap:12px;padding:12px;border:1px solid var(--line);background:rgba(var(--surface-raw),.74)}.multi-select-box>button{justify-self:start}.multi-select-values{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.multi-select-values li{padding:6px 9px;border:1px solid var(--line);background:var(--panel-2);font-size:13px;overflow-wrap:anywhere}.selection-dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--line);background:var(--panel);color:var(--text);box-shadow:var(--shadow)}.selection-dialog::backdrop{background:#000000a6}.selection-dialog-content{display:flex;flex-direction:column;max-height:calc(100dvh - 36px)}.selection-dialog-header,.selection-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;flex-shrink:0}.selection-dialog-header{border-bottom:1px solid var(--line)}.selection-dialog-header h2{margin:0;font-size:20px}.selection-options{overflow-y:auto;padding:12px 18px}.selection-option{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px;cursor:pointer;overflow-wrap:anywhere}.selection-option:hover,.selection-option:has(input:checked){background:var(--panel-2)}.selection-option input{width:20px;height:20px;flex-shrink:0;accent-color:var(--green)}.selection-dialog-footer{flex-wrap:wrap;border-top:1px solid var(--line)}.selection-dialog-actions{display:flex;flex-wrap:wrap;gap:8px}.edit-form select[multiple]{min-height:104px;padding:8px 11px}.date-field{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px}.date-field input{min-width:0}.edit-form input:focus,.edit-form select:focus{border-color:var(--line-hot)}.checkbox-field{align-content:end;grid-template-columns:auto 1fr;text-transform:none}.checkbox-field input{min-height:auto;width:18px;height:18px;accent-color:var(--green)}.wide-field{grid-column:span 2}.form-action{align-self:end;min-height:42px}.detail-meter{margin-top:18px}.detail-meter meter{width:min(100%,520px);height:16px}.settings-block{border-top:1px solid var(--line);display:grid;gap:8px;margin-top:18px;padding-top:18px}.settings-block span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.settings-block code{border:1px solid var(--line);background:rgba(var(--surface-raw),.62);color:var(--text);display:block;overflow-x:auto;padding:12px}.settings-form{grid-template-columns:repeat(3,minmax(0,1fr))}.material-stock{display:flex;align-items:center;gap:12px}.material-stock meter{width:180px;height:12px}.tablet-wrap{display:grid;place-items:center;min-height:calc(100vh - 150px)}.tablet{width:min(100%,900px);min-height:620px;padding:24px;border-width:2px}.tablet header{border-bottom:1px solid var(--line);padding-bottom:18px}.tablet header strong{display:block;font-size:24px}.tablet-task{padding:34px 0}.tablet-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.tablet-admin-picker{border:1px solid var(--line);background:rgba(var(--surface-raw),.62);display:grid;grid-template-columns:auto minmax(220px,1fr);gap:12px;align-items:center;margin-top:18px;padding:12px}.tablet-admin-picker span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.tablet-admin-picker select{border:1px solid var(--line);background:rgba(var(--surface-raw),.74);color:var(--text);min-height:42px;padding:0 11px}.tablet-task p{color:var(--muted);font-size:18px}.tablet-task h2{font-size:clamp(32px,5vw,58px);margin:6px 0 28px}.tablet-progress strong{font-size:36px}.progress-track{height:18px;background:var(--panel-2);margin-top:14px}.touch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.touch{border:1px solid var(--line);background:var(--panel);min-height:112px;padding:12px;font-size:24px;font-weight:900;cursor:pointer}.touch.primary{background:var(--panel-2);color:var(--green);border-color:#43f0bd8c}.touch.warn{color:var(--amber)}.touch.danger{color:var(--red)}.touch.finish{background:var(--panel-2)}@media(max-width:1100px){.shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:5;flex-direction:row;align-items:center;overflow-x:auto}.nav-list{display:flex;min-width:max-content}.system-state{margin-top:0;margin-left:auto}.metric-grid,.dashboard-layout,.catalog-layout,.dictionary-layout,.process-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.station-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.workspace{padding:16px}.topbar,.panel-head{flex-direction:column;align-items:stretch}.panel-actions{align-items:stretch}.top-actions{flex-direction:column}.metric-grid,.dashboard-layout,.catalog-layout,.dictionary-layout,.dictionary-records,.business-row,.inline-form,.detail-grid,.edit-form,.process-flow,.station-grid,.touch-grid{grid-template-columns:1fr}.wide-field{grid-column:auto}.table-row{grid-template-columns:1fr;gap:6px}.table-row.header{display:none}.tablet{min-height:auto}.tablet-selector,.tablet-admin-picker{grid-template-columns:1fr}}.station-agenda{min-width:0}.agenda-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:18px 0}.agenda-controls>label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.agenda-controls select,.agenda-controls input[type=date]{min-height:42px;padding:8px 10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font:inherit}.agenda-navigation{display:flex;gap:6px}.agenda-navigation [aria-pressed=true]{border-color:var(--green);color:var(--green);background:var(--panel-2)}.agenda-controls .agenda-completed{display:flex;align-items:center;min-height:42px;gap:8px}.agenda-completed input{width:18px;height:18px;accent-color:var(--green)}.agenda-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.agenda-summary>div{display:grid;align-content:start;gap:8px;padding:14px;border:1px solid var(--line);background:var(--panel-2)}.agenda-summary span{color:var(--muted);font-size:12px}.agenda-summary strong{font-size:18px}.agenda-legend{display:flex;flex-wrap:wrap;gap:18px;align-items:baseline;margin:16px 0 10px;color:var(--green);font-size:12px}.agenda-scroll{overflow-x:auto;border:1px solid var(--line)}.agenda-calendar{min-width:760px;padding-right:24px}.agenda-day{display:grid;grid-template-columns:118px minmax(0,1fr);border-bottom:1px solid var(--line)}.agenda-day:last-child{border-bottom:0}.agenda-day-label{position:sticky;left:0;z-index:2;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:12px;background:var(--panel);border-right:1px solid var(--line);font-size:12px}.agenda-day-label small{color:var(--muted)}.agenda-day.today .agenda-day-label{color:var(--green);box-shadow:inset 3px 0 var(--green)}.agenda-hours{position:relative;height:42px;color:var(--muted);font-size:11px}.agenda-hours span{position:absolute;top:14px;transform:translate(-50%)}.agenda-hours span:first-child{transform:none}.agenda-track{position:relative;background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / 24 - 1px),var(--line) calc(100% / 24 - 1px),var(--line) calc(100% / 24))}.agenda-empty{position:absolute;left:12px;top:24px;color:var(--muted);font-size:12px}.agenda-block{position:absolute;display:flex;flex-direction:column;justify-content:center;gap:2px;height:38px;min-width:3px;overflow:hidden;padding:3px 0;border:1px solid var(--green);background:var(--panel-2);color:var(--green);text-align:left;cursor:pointer}.agenda-block strong,.agenda-block small{display:block;margin:0 5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;flex-shrink:0}.agenda-block small{font-size:10px;color:var(--text)}.agenda-block.conflict{border-color:var(--amber);color:var(--amber);background:repeating-linear-gradient(135deg,var(--panel-2),var(--panel-2) 7px,var(--panel) 7px,var(--panel) 14px)}.agenda-block.completed{color:var(--muted);border-color:var(--muted);background:var(--panel)}.agenda-block.selected,.agenda-block:focus-visible{outline:2px solid var(--text);outline-offset:2px;z-index:1}.agenda-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:22px}.agenda-task-list{display:grid;gap:8px}.agenda-list-item{display:grid;gap:7px;width:100%;padding:14px;text-align:left;border:1px solid var(--line);background:var(--panel-2);cursor:pointer;overflow-wrap:anywhere}.agenda-list-item>span{font-size:12px}.agenda-list-item.selected,.agenda-list-item:hover{border-color:var(--green)}.agenda-details{padding:0 18px 18px;background:var(--panel-2);border:1px solid var(--line);overflow-wrap:anywhere}.agenda-details dl{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,1.5fr);gap:10px;font-size:13px}.agenda-details dt{color:var(--muted)}.agenda-details dd{margin:0}.agenda-unscheduled{margin-top:18px}.agenda-unscheduled summary{cursor:pointer;color:var(--amber);padding:12px 0}@media(max-width:900px){.agenda-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-bottom{grid-template-columns:1fr}}@media(max-width:480px){.agenda-controls>label:not(.agenda-completed){width:100%}.agenda-summary{grid-template-columns:1fr}}.resource-calendar{min-width:0}.employee-tabs{margin-bottom:16px}.calendar-profile{display:flex;flex-wrap:wrap;gap:12px;align-items:end;padding:14px;border:1px solid var(--line)}.calendar-profile label,.shift-assignments label{display:grid;gap:6px;color:var(--muted);font-size:12px}.calendar-profile select,.shift-assignments select{min-height:40px;padding:8px;background:var(--panel-2);border:1px solid var(--line);color:var(--text)}.calendar-profile a{color:var(--green);font-size:13px;padding:10px 0}.calendar-profile>span{flex-basis:100%}.calendar-month-scroll{overflow-x:auto}.calendar-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;min-width:700px;background:var(--line);border:1px solid var(--line)}.calendar-weekday{text-align:center;padding:12px;background:var(--panel-2);color:var(--muted);font-size:12px}.calendar-cell,.calendar-blank{background:var(--panel);min-height:146px;padding:8px}.calendar-blank{background:var(--panel-2)}.calendar-cell.today{box-shadow:inset 0 3px var(--green)}.calendar-date{width:100%;display:flex;align-items:center;justify-content:space-between;background:transparent;border:0;color:var(--text);padding:4px 0 10px;cursor:pointer;font-weight:800}.calendar-date small{font-size:10px;color:var(--muted);font-weight:500}.calendar-chip{width:100%;text-align:left;padding:5px;margin-bottom:4px;font-size:11px;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.calendar-chip.work,.calendar-entry.work{background:var(--panel-2);color:#5ea8e5;border:1px solid #5ea8e5}.calendar-work-key{color:#5ea8e5}.calendar-chip.blocked,.calendar-entry.blocked{background:var(--panel-2);color:var(--amber);border:1px solid var(--amber)}.calendar-task-count{width:100%;text-align:left;border:0;background:transparent;color:var(--green);font-size:10px;padding:6px 0;cursor:pointer}.calendar-add-day{border:0;background:transparent;color:var(--green);text-align:left;padding:4px 0;cursor:pointer}.calendar-weekdays{display:flex;flex-wrap:wrap;gap:10px}.calendar-weekdays label{display:flex;align-items:center;gap:4px}.calendar-weekdays input{width:16px;min-height:16px}.shift-settings{grid-column:1 / -1}.shift-hours{display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding:10px;border:1px solid var(--line)}.shift-hours label{display:grid;gap:5px}.shift-assignments{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.resource-calendar .agenda-navigation{flex-wrap:wrap}.resource-calendar button:focus-visible{outline:2px solid var(--green);outline-offset:2px}@media(max-width:600px){.resource-calendar .panel-head{align-items:start;flex-direction:column;gap:12px}.resource-calendar .agenda-details .edit-form{grid-template-columns:1fr}}.monthly-roster{min-width:0}.employee-tabs{flex-wrap:wrap}.monthly-roster .agenda-controls input{min-height:42px;padding:8px 10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font:inherit}.roster-legend{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;color:var(--muted)}.roster-save-status{min-height:22px;color:var(--green);font-size:13px}.roster-scroll{max-height:65vh;overflow:auto;border:1px solid var(--line)}.roster-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:12px}.roster-table caption{text-align:left;padding:10px;color:var(--muted)}.roster-table th,.roster-table td{min-width:88px;max-width:116px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:7px;vertical-align:top;background:var(--panel)}.roster-table thead th{position:sticky;top:0;z-index:2;text-align:center;background:var(--panel-2)}.roster-table thead th strong,.roster-table thead th span{display:block;padding:2px}.roster-table .roster-person{position:sticky;left:0;min-width:200px;max-width:200px;z-index:1;text-align:left;background:var(--panel-2);box-shadow:2px 0 var(--line)}.roster-table thead .roster-person{z-index:3}.roster-person small{display:block;margin-top:6px;color:var(--muted);line-height:1.5;font-weight:400}.roster-table .weekend{background:var(--panel-2)}.roster-table .has-absence{box-shadow:inset 0 3px var(--amber)}.roster-shift{width:100%;min-height:35px;font-size:13px;font-weight:800;border:1px solid var(--line);background:var(--panel-2);color:var(--muted)}.roster-shift.shift-1{color:var(--green);border-color:var(--green)}.roster-shift.shift-2{color:#5ea8e5;border-color:#5ea8e5}.roster-shift.shift-3{color:#ba9ded;border-color:#ba9ded}.roster-shift.shift-custom{color:var(--amber);border-color:var(--amber)}.roster-hours{display:block;width:100%;padding:8px 0;border:0;background:transparent;color:var(--text);font-size:10px;cursor:pointer;overflow-wrap:anywhere;text-align:center}.roster-carry,.roster-absence{display:block;font-size:10px;margin:4px 0}.roster-carry{color:var(--muted)}.roster-absence{color:var(--amber)}.roster-total{color:var(--green);font-weight:800;white-space:nowrap}.roster-dialog{width:min(660px,calc(100vw - 32px));max-height:85vh;padding:24px;background:var(--panel);color:var(--text);border:1px solid var(--line);overflow:auto}.roster-dialog::backdrop{background:#0009}.roster-period{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0;padding:16px;border:1px solid var(--line)}.roster-period label{display:grid;gap:6px;font-size:12px}.roster-period input{padding:9px;background:var(--panel-2);border:1px solid var(--line);color:var(--text);min-width:0}.roster-period>span{color:var(--muted);font-size:12px;padding-bottom:10px}.roster-note{width:100%}.roster-dialog .agenda-navigation{flex-wrap:wrap}.roster-dialog h2{margin-top:0}@media(max-width:600px){.roster-table .roster-person{min-width:135px;max-width:135px}}.roster-bulk-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;margin:14px 0;border:1px solid var(--line);background:var(--panel-2)}.roster-bulk-toolbar>span{font-size:12px;color:var(--green);font-weight:800}.roster-table .roster-selected{outline:2px solid var(--green);outline-offset:-2px;background:color-mix(in srgb,var(--green) 12%,var(--panel))}.roster-cell-select{display:block;border:0;background:transparent;color:var(--muted);font-size:20px;padding:0 3px 4px;cursor:pointer}.roster-cell-select[aria-pressed=true]{color:var(--green)}.roster-day-select{border:0;width:100%;padding:0;background:transparent;color:inherit;font:inherit;cursor:pointer}button.roster-absence{border:1px solid var(--amber);background:transparent;padding:4px;text-align:left;max-width:100%;cursor:pointer}.absence-fields{border:0;padding:0;display:grid;gap:14px;min-width:0}.absence-fields>label,.absence-dates label{display:grid;gap:7px;font-size:13px}.absence-fields input:not([type=checkbox]),.absence-fields select{width:100%;padding:10px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);min-width:0}.absence-dates{display:grid;grid-template-columns:1fr 1fr;gap:14px}.absence-employees{border:1px solid var(--line);padding:12px;max-height:180px;overflow:auto;display:grid;grid-template-columns:1fr 1fr;gap:10px}.absence-employees label,.absence-fields .absence-check{display:flex;align-items:center;gap:8px;font-size:13px}.absence-fields input[type=checkbox]{width:17px;height:17px;accent-color:var(--green)}.roster-dialog .planning-note{margin:16px 0}.roster-dialog details ul{max-height:180px;overflow:auto;padding-left:20px}.roster-dialog details li{margin:6px 0}@media(max-width:520px){.absence-dates,.absence-employees{grid-template-columns:1fr}}.roster-help{margin:12px 0}.roster-help summary{color:var(--muted);cursor:pointer;font-size:12px}
