:root{font-family:"Segoe UI",Arial,sans-serif;color:#243531;background:#f4f6f5;font-synthesis:none;--ink:#203730;--muted:#61726c;--line:#dce4df;--green:#196b4c;--nav:#142f29;--soft:#edf4ef;--red:#a33c35;--amber:#91611a;--blue:#285d93;--radius:10px;font-size:14px;color-scheme:light}
.import-surface{min-width:0}.import-template{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px}.import-template p,.import-help p{color:var(--muted);max-width:75ch;margin-top:6px}.import-template .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid var(--line);border-radius:6px;text-decoration:none;font-weight:600;white-space:nowrap;min-height:42px}.import-template .btn:hover{background:var(--soft);border-color:#a9bfb1}.import-surface .import-zone{margin:0 24px;padding:30px 20px;border:2px dashed #a9bbb1;transition:background .15s,border-color .15s}.import-surface .import-zone.drag-active{background:#edf4ef;border-color:var(--green)}.import-surface .import-zone input{display:block;margin:18px auto 10px;width:min(100%,440px)}#import-selected{overflow-wrap:anywhere;margin:8px 0 16px;color:var(--muted)}.import-help{padding:24px}.import-surface .form-body>h3{margin:28px 0 8px}.import-surface .form-body>p{margin-bottom:16px}.import-conflict{min-width:0;margin:24px 0;padding:18px;border:1px solid var(--line);border-radius:8px}.import-conflict legend{font-weight:650;padding:0 8px;overflow-wrap:anywhere;max-width:100%}.import-conflict>p{margin-bottom:12px}.import-comparison{max-width:100%;overflow:auto;margin:16px 0}.import-comparison table{min-width:640px;table-layout:fixed}.import-comparison th,.import-comparison td{white-space:normal;overflow-wrap:anywhere;vertical-align:top}.import-comparison tbody th{width:150px;text-align:left;font-size:12px;font-weight:600;background:#f6f8f7}.import-comparison .import-difference th,.import-comparison .import-difference td{background:#faf0d9;color:#634e21}.import-comparison th small{display:block;font-weight:400;margin-top:4px}.import-choices{display:flex;flex-wrap:wrap;gap:12px 24px;margin:16px 0}.import-choices label{display:flex;align-items:flex-start;gap:8px;min-height:36px;cursor:pointer;line-height:1.5}.import-choices input{margin:4px 0 0;accent-color:var(--green)}.import-choices>div{max-width:65ch}.import-choices .form-error{margin:0 0 12px 22px}.import-target{display:grid;gap:8px;max-width:640px;margin:12px 0}.import-surface .table-limit{margin-top:16px}.import-surface .form-actions{flex-wrap:wrap}.import-surface .import-summary{margin-top:20px}.import-surface td small{overflow-wrap:anywhere}
.import-surface .table-limit table{min-width:850px}.import-surface #import-selected{text-align:center}
@media(max-width:600px){.import-template{align-items:flex-start;flex-direction:column;padding:20px 16px;gap:16px}.import-surface .import-zone{margin:0 16px;padding:24px 12px}.import-help{padding:20px 16px}.import-surface .form-body{padding:16px}.import-surface .import-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px}.import-surface .import-summary>div{border:0;padding:0}.import-conflict{padding:12px}.import-choices{flex-direction:column;gap:8px}.import-comparison table{min-width:0;width:100%}.import-comparison thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.import-comparison tbody{display:block}.import-comparison tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:8px}.import-comparison tbody th{grid-column:1/-1;width:auto;padding:8px;font-weight:650}.import-comparison tbody td{min-width:0;padding:8px;font-size:12px;line-height:1.5}.import-comparison td::before{content:attr(data-version-label);display:block;font-size:10px;color:var(--muted);margin-bottom:6px}.import-comparison .import-difference td::before{color:#634e21}.import-comparison th small{display:inline;margin-left:6px}}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button,input,select,textarea{border-radius:6px}button{border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 13px;display:inline-flex;gap:7px;align-items:center;justify-content:center;white-space:nowrap;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:#eef3ef;border-color:#a9bfb1}button.primary{background:var(--green);border-color:var(--green);color:#fff}button.primary:hover:not(:disabled){background:#14573e}button.danger{color:var(--red);border-color:#e6c6c3}button.small{padding:6px 10px;font-size:12px}button.icon{padding:8px;width:34px;height:34px}button.ghost{background:transparent;border-color:transparent}button.link{border:0;background:transparent;padding:0;color:var(--green);justify-content:flex-start;white-space:normal;text-align:left;font-weight:600}a{color:var(--green);text-underline-offset:3px}input,select,textarea{border:1px solid #bccbc2;background:white;color:var(--ink);padding:9px 11px;min-width:0;max-width:100%;caret-color:var(--green)}input::placeholder,textarea::placeholder{color:#718078}textarea{resize:vertical;min-height:90px}input[type=checkbox]{accent-color:var(--green)}:focus-visible{outline:3px solid #78b798;outline-offset:3px}::selection{background:#c7e6d2;color:#123c29}h1,h2,h3,p{margin:0}h1{font-size:27px;letter-spacing:-.025em;line-height:1.2;font-weight:650}h2{font-size:17px;letter-spacing:-.015em;font-weight:650}h3{font-size:14px;font-weight:650}p{line-height:1.6}svg{width:18px;height:18px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.smalltext{font-size:12px;line-height:1.5}.nowrap{white-space:nowrap}.break{overflow-wrap:anywhere}.boot{padding:70px;text-align:center;color:var(--muted)}.app{display:grid;grid-template-columns:204px minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;height:100dvh;background:var(--nav);color:#dbe8df;display:flex;flex-direction:column;padding:26px 15px 16px}.brand{display:flex;gap:10px;align-items:center;padding:0 10px 28px;font-size:16px;font-weight:650;letter-spacing:-.02em}.brandmark{display:grid;place-items:center;width:32px;height:32px;background:#dbe7b8;color:#183b29;border-radius:7px;font-size:12px;font-weight:800;letter-spacing:-.03em}.brand small{display:block;font-size:10px;color:#adc3b7;font-weight:400;letter-spacing:.06em;margin-top:3px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{justify-content:flex-start;color:#b8cbc1;background:transparent;border-color:transparent;padding:11px 13px;font-size:13px}.nav button:hover{background:#25473b;color:#fff;border-color:transparent}.nav button.active{background:#2d5041;color:white}.nav .navcount{margin-left:auto;background:#49614c;border-radius:4px;font-size:10px;padding:2px 5px;color:#fff}.side-divider{height:1px;background:#345145;margin:22px 11px}.side-help{font-size:11px;line-height:1.7;color:#a6beb0;padding:0 12px}.sidebar-bottom{margin-top:auto;padding:24px 8px 0}.account{display:flex;gap:9px;align-items:center;margin:0 0 14px}.avatar{width:32px;height:32px;border-radius:50%;background:#355143;color:#e5eedf;display:grid;place-items:center;font-size:12px;font-weight:600}.account strong{font-size:12px;color:#fff;display:block;max-width:115px;overflow:hidden;text-overflow:ellipsis}.account small{font-size:11px;color:#adc3b7;text-transform:capitalize}.sidebar-bottom button{color:#c5d5cb;font-size:12px;padding:6px 0}.main{min-width:0}.topbar{height:61px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:12px}.breadcrumb{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:9px}.breadcrumb strong{color:var(--ink);font-weight:600}.topright{display:flex;gap:18px;align-items:center}.sync{font-size:11px;display:flex;gap:7px;align-items:center;color:var(--muted)}.dot{width:6px;height:6px;background:var(--green);border-radius:50%;display:inline-block}.sync.failed{color:var(--red)}.sync.failed .dot{background:var(--red)}.workspace{max-width:1760px;margin:auto;padding:30px 32px 40px}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}.page-heading p{color:var(--muted);font-size:13px;margin-top:8px}.actions{display:flex;gap:8px;flex-wrap:wrap}.periodbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:22px}.periodbar .date-controls{display:flex;align-items:center;gap:6px}.periodbar input[type=date]{width:151px;background:#fff;font-size:12px;padding:8px}.periodbar .range-title{font-size:13px;font-weight:600;margin-left:5px}.periodbar .segments{margin-left:auto}.segments{display:inline-flex;padding:3px;background:#e9eeeb;border-radius:7px;gap:2px}.segments button{font-size:12px;border:none;background:transparent;padding:7px 14px;color:#596d61}.segments button.selected{background:white;color:#203e2e;box-shadow:0 1px 3px #132f2914}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:25px;padding:0 0 23px;border-bottom:1px solid var(--line)}.metric{display:block;text-align:left;padding:0 24px;border:0;border-right:1px solid var(--line);border-radius:0;background:transparent;white-space:normal}.metric:first-child{padding-left:0}.metric:last-child{border-right:0}.metric:hover:not(:disabled){background:transparent;border-color:var(--line)}.metric .label{color:var(--muted);font-size:12px;display:flex;align-items:center;gap:7px}.metric .value{font-size:32px;font-weight:600;letter-spacing:-.035em;display:block;margin:8px 0 3px;line-height:1.1}.metric .detail{font-size:11px;color:var(--muted)}.metric.alert .value{color:var(--red)}.metric.warn .value{color:var(--amber)}.overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start}.surface{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.surface-head{padding:20px;display:flex;align-items:center;justify-content:space-between;gap:10px}.surface-head p{font-size:11px;color:var(--muted);margin-top:5px}.surface-head h2{font-size:15px}.legend{display:flex;flex-wrap:wrap;gap:13px;font-size:10px;color:var(--muted);padding:0 20px 15px}.legend span{display:flex;align-items:center;gap:5px}.swatch{display:inline-block;width:7px;height:7px;border-radius:2px}.swatch.running{background:#3c8b68}.swatch.planned{background:#d7a746}.swatch.unconfirmed{background:#789993}.swatch.completed{background:#438ca1}.swatch.blocked{background:#b56560}.timeline-scroll{overflow:auto}.timeline{min-width:680px}.time-head{display:grid;grid-template-columns:112px 1fr;min-height:33px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f8faf8}.time-head>span{font-size:10px;color:var(--muted);padding:9px 14px}.hours{display:grid;grid-template-columns:repeat(12,1fr);font-size:9px;color:#76857c;align-items:center}.hours span{padding-left:6px;white-space:nowrap;font-variant-numeric:tabular-nums}.machine-row{display:grid;grid-template-columns:112px 1fr;border-bottom:1px solid #e6ece7;min-height:99px}.machine-row:last-child{border-bottom:0}.machine-label{background:#fafbf9;padding:20px 13px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:6px;align-items:flex-start}.machine-label strong{font-size:12px;letter-spacing:.02em}.machine-label small{font-size:9px;color:var(--muted)}.machine-track{position:relative;min-height:99px;background-image:linear-gradient(to right,#e8eee9 1px,transparent 1px);background-size:8.3333% 100%}.jobbar{position:absolute;top:22px;border:1px solid #b9cbc4;border-radius:5px;padding:7px 9px;background:#edf3f0;min-width:8px;display:block;text-align:left;white-space:normal;overflow:hidden;height:57px;color:#38584d;z-index:2}.jobbar:hover:not(:disabled){background:#dfeee5;border-color:#65967f;z-index:4}.jobbar strong,.jobbar small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.jobbar strong{font-size:10px;font-weight:650}.jobbar small{font-size:9px;margin-top:4px}.jobbar.running{background:#d7ecde;border-color:#8bbe9c;color:#235c3b}.jobbar.completed{background:#e0eef2;border-color:#a8cbd3;color:#315e6f}.jobbar.planned{background:#fcf0d6;border-color:#e3c480;color:#77571b}.jobbar.blocked,.jobbar.on-hold{background:#f5e4e1;border-color:#d4a9a2;color:#853f38}.jobbar.cancelled{background:#f0f0ee;color:#7b817b;text-decoration:line-through}.nowline{position:absolute;top:0;bottom:0;width:1px;background:#b7413f;z-index:5;pointer-events:none}.nowline:before{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:#b7413f;top:0;left:-2px}.empty-track{position:absolute;left:18px;top:39px;font-size:11px;color:#819087}.schedule-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;font-size:10px;color:var(--muted);border-top:1px solid var(--line);gap:15px}.attention{padding-bottom:5px}.attention .surface-head{padding-bottom:10px}.attention-list{padding:0 17px}.attention-item{display:block;width:100%;text-align:left;white-space:normal;padding:14px 0;border:0;border-bottom:1px solid #e6ece7;border-radius:0;background:transparent}.attention-item:last-child{border-bottom:0}.attention-item:hover:not(:disabled){background:#f7faf7;border-color:#e6ece7}.attention-item .row{display:flex;justify-content:space-between;gap:8px;margin-bottom:7px}.attention-item strong{font-size:12px;font-weight:600}.attention-item p{font-size:11px;color:var(--muted);line-height:1.5}.attention-item .next{display:block;color:var(--green);font-size:11px;margin-top:8px}.badge{font-size:10px;font-weight:600;display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:4px;background:#edf1ee;color:#57695d;white-space:nowrap}.badge.running,.badge.ready,.badge.available{background:#e3f0e6;color:#286b45}.badge.completed{background:#e4f0f4;color:#326a7b}.badge.blocked,.badge.down,.badge.critical,.badge.on-hold{background:#f6e8e5;color:#9b443c}.badge.planned,.badge.high,.badge.maintenance{background:#faf0d9;color:#82591b}.badge.unconfirmed,.badge.unknown{background:#edf0ee;color:#586e63}.badge.cancelled{background:#edeceb;color:#686e67}.section-gap{margin-top:24px}.table-toolbar{padding:17px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}.filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.search-wrap{display:flex;align-items:center;gap:8px;border:1px solid #c6d2ca;border-radius:6px;padding:0 10px;background:white}.search-wrap svg{color:var(--muted);width:15px}.search-wrap input{border:0;outline-offset:1px;width:220px;padding:9px 0;font-size:12px}.filters select{font-size:12px;padding:8px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{background:#f8faf8;color:#637469;font-size:10px;font-weight:600;padding:11px 17px;white-space:nowrap;border-bottom:1px solid var(--line)}td{padding:15px 17px;border-bottom:1px solid #e8eee9;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcf9}td small{display:block;font-size:10px;color:var(--muted);margin-top:4px;line-height:1.45}td .job-name{font-size:12px;max-width:250px}td .badge{margin:2px 2px 2px 0}.table-foot{padding:12px 20px;display:flex;gap:10px;justify-content:space-between;align-items:center;color:var(--muted);font-size:11px;border-top:1px solid var(--line)}.notice{display:flex;gap:10px;background:#edf3ef;color:#405e4b;border:1px solid #d6e3d8;border-radius:7px;padding:12px 15px;font-size:12px;line-height:1.6;margin-bottom:20px}.notice.warn{background:#fff7e7;border-color:#ebddbb;color:#7c6029}.notice.error{background:#fff0ed;border-color:#e7c4be;color:#923d33}.notice svg{margin-top:2px}.notice p{flex:1}.empty{padding:40px 24px;text-align:center;color:var(--muted)}.empty svg{width:27px;height:27px;margin-bottom:12px}.empty strong{display:block;color:var(--ink);font-weight:600;margin-bottom:7px}.empty p{font-size:12px;max-width:430px;margin:auto}.empty button{margin-top:16px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(145px,1fr));min-width:1015px}.week-day{border-right:1px solid var(--line);min-height:330px;padding:12px}.week-day:last-child{border-right:0}.day-heading{display:flex;width:100%;border:0;background:transparent;justify-content:space-between;padding:4px 0 13px;font-size:11px;color:var(--muted)}.day-heading strong{font-size:19px;color:var(--ink)}.today .day-heading strong{background:var(--green);color:#fff;border-radius:50%;padding:3px 6px}.week-job{display:block;width:100%;text-align:left;white-space:normal;padding:10px;margin:8px 0;background:#f4f7f4;border:1px solid #dae5dc}.week-job strong{display:block;font-size:11px;line-height:1.4;margin:5px 0}.week-job small{font-size:10px;color:var(--muted);display:block}.week-job.blocked{background:#fbf0ed;border-color:#e8ccc5}.week-job.running{background:#eaf4ec}.week-day .no-jobs{font-size:11px;color:#7b8a81;margin-top:30px;text-align:center}.calendar-scroll{overflow:auto}.calendar{min-width:630px;display:grid;grid-template-columns:repeat(7,1fr)}.calendar .weekday{background:#f7faf7;text-align:center;font-size:10px;color:var(--muted);padding:11px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar-day{border:0;border-radius:0;border-right:1px solid #e4ebe5;border-bottom:1px solid #e4ebe5;min-height:115px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:11px 12px;gap:9px;white-space:normal;text-align:left}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#f8faf8;color:#94a197}.calendar-day.today .day-number{background:var(--green);color:#fff;border-radius:50%;width:25px;height:25px;display:grid;place-items:center}.day-number{font-size:12px;font-weight:600;align-self:flex-start;height:25px;display:flex;align-items:center}.calendar-day .cal-count{font-size:11px;color:var(--ink);font-weight:600}.cal-machine{display:flex;gap:3px}.cal-machine span{flex:1;height:4px;background:#dfe8e1;border-radius:2px}.cal-machine span.occupied{background:#599676}.calendar-day .cal-alert{font-size:9px;color:var(--red)}.calendar-day.outside .cal-count{color:#7b8a81}.split{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:20px}.form-body{padding:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.field small{font-weight:400;color:var(--muted);font-size:10px;line-height:1.5}.field.full{grid-column:1/-1}.field textarea,.field input,.field select{font-weight:400;width:100%}.form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:23px}.form-error{display:none;margin:14px 0 0;padding:11px;background:#fff0ed;border:1px solid #e7c4be;border-radius:6px;color:#913c32;font-size:12px;line-height:1.5}.form-error:not(:empty){display:block}.inline-check{display:flex;align-items:center;gap:8px;font-size:12px}.panel-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.machine-card{padding:19px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px}.machine-card:last-child{border-bottom:0}.machine-glyph{background:#edf3ed;padding:11px;border-radius:7px;color:var(--green);display:grid;place-items:center}.machine-glyph svg{width:22px;height:22px}.machine-info{flex:1;min-width:0}.machine-info p{font-size:11px;color:var(--muted);margin-top:5px}.activity-item{padding:15px 20px;border-bottom:1px solid #e6ece7;display:flex;gap:12px}.activity-item:last-child{border:0}.activity-item .activity-symbol{color:var(--green);margin-top:1px}.activity-item strong{font-size:12px;font-weight:600}.activity-item p{font-size:11px;color:var(--muted);margin-top:4px;overflow-wrap:anywhere}.activity-item time{font-size:10px;color:var(--muted);display:block;margin-top:6px}.import-zone{padding:35px 25px;border:1px dashed #a4bfa9;border-radius:8px;background:#f5f9f4;text-align:center;margin:0 20px 20px}.import-zone svg{width:30px;height:30px;color:var(--green);margin-bottom:12px}.import-zone h3{font-size:15px}.import-zone p{font-size:12px;color:var(--muted);margin:9px auto 18px;max-width:410px}.import-zone input{display:block;margin:0 auto 12px;width:100%;max-width:360px;font-size:12px;background:white}.import-summary{display:flex;gap:25px;flex-wrap:wrap;margin-bottom:20px}.import-summary strong{display:block;font-size:26px;font-weight:600;margin-bottom:4px}.import-summary span{font-size:11px;color:var(--muted)}.handover-note{padding:20px;border-bottom:1px solid var(--line)}.handover-note:last-child{border-bottom:0}.handover-note p{font-size:13px;white-space:pre-wrap;margin:12px 0}.handover-note header{display:flex;gap:8px;align-items:center}.handover-note footer{font-size:11px;color:var(--muted)}.progress-list{padding:0 20px 20px}.coverage-row{margin-top:18px}.coverage-row>div{display:flex;justify-content:space-between;font-size:12px;margin-bottom:8px}.coverage-track{height:8px;background:#eef2ed;border-radius:3px;overflow:hidden}.coverage-track span{display:block;height:100%;background:#548b68;border-radius:3px}.role-table td{line-height:1.7}.auth-screen{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-story{background:var(--nav);padding:60px;display:flex;flex-direction:column;justify-content:center;color:#eff5e9;position:relative}.auth-story .brand{padding:0;margin-bottom:70px}.auth-story h1{font-size:44px;max-width:480px;line-height:1.15;letter-spacing:-.035em}.auth-story>p{font-size:15px;line-height:1.7;color:#b8cfbe;max-width:390px;margin-top:22px}.auth-proof{margin-top:42px;border-top:1px solid #3b5847;padding-top:23px;font-size:12px;color:#c4d7ca;display:flex;gap:24px}.auth-right{display:grid;place-items:center;padding:40px}.auth-form{width:100%;max-width:360px}.auth-form h2{font-size:25px;margin-bottom:10px}.auth-form>p{font-size:13px;color:var(--muted);margin-bottom:27px}.auth-form .field{margin-bottom:17px}.auth-form .primary{width:100%;margin-top:8px}.auth-foot{font-size:11px;color:var(--muted);line-height:1.7;margin-top:25px}dialog{border:0;padding:0;border-radius:0;position:fixed;inset:0 0 0 auto;margin:0;width:min(600px,100%);height:100dvh;max-height:100dvh;max-width:100%;background:white;color:var(--ink);box-shadow:-12px 0 50px #122d2926;overflow:auto}dialog::backdrop{background:#102b2659}dialog[open]{animation:panel-in .18s ease-out}.panel-head{padding:25px 25px 20px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;position:sticky;top:0;background:#fff;z-index:9}.panel-head h2{font-size:21px;margin-bottom:7px}.panel-head p{font-size:11px;color:var(--muted)}.panel-content{padding:24px}.panel-section{padding-top:22px;margin-top:22px;border-top:1px solid var(--line)}.panel-section h3{margin-bottom:15px}.job-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:22px 0}.job-meta dt{font-size:10px;color:var(--muted);margin-bottom:6px}.job-meta dd{margin:0;font-size:13px;overflow-wrap:anywhere}.job-controls{display:flex;gap:8px;flex-wrap:wrap}.notes-text{font-size:12px;line-height:1.6;white-space:pre-wrap;color:#53685a}.event{font-size:12px;margin-bottom:16px}.event small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.event p{font-size:11px;margin-top:5px}.permission{font-size:12px;color:var(--muted);padding:12px 0;line-height:1.6}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#183e2d;color:white;padding:13px 20px;border-radius:8px;box-shadow:0 8px 25px #12372920;max-width:min(500px,90vw);font-size:13px;line-height:1.5;z-index:100;display:none}#toast.visible{display:block}.mobile-brand{display:none}.live-clock{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.caption{font-size:11px;color:var(--muted);line-height:1.6;margin-top:14px}.table-limit{max-height:540px;overflow:auto}.table-limit th{position:sticky;top:0;z-index:2}.filter-empty{padding:28px;text-align:center;color:var(--muted);font-size:12px}.checkbox-row{display:flex;gap:9px;align-items:flex-start;font-size:12px;line-height:1.6;margin:18px 0}.checkbox-row input{margin-top:4px}.inline-tag{font-size:10px;margin-left:5px;color:var(--muted)}.stat-line{padding:17px 20px;display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);font-size:12px}.stat-line strong{font-variant-numeric:tabular-nums}.wide{grid-column:1/-1}
@keyframes panel-in{from{transform:translateX(18px);opacity:.7}to{transform:translateX(0);opacity:1}}
@media(min-width:1600px){.overview-grid{grid-template-columns:minmax(0,1fr) 325px}.workspace{padding:36px 40px}.machine-row{min-height:115px}.machine-track{min-height:115px}.jobbar{top:28px}.machine-label{padding-top:28px}}
@media(max-width:1200px){.app{grid-template-columns:180px minmax(0,1fr)}.workspace{padding:24px}.topbar{padding:0 24px}.overview-grid{grid-template-columns:1fr}.attention-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.attention-item{border-bottom:0}.attention .surface-head{padding-bottom:0}.metric{padding:0 15px}.split{grid-template-columns:1fr}.auth-story{padding:40px}.auth-story h1{font-size:36px}}
@media(max-width:800px){.app{display:block}.sidebar{height:auto;position:static;padding:12px;background:var(--nav)}.brand{padding:0 4px 13px;font-size:14px}.brand small{display:none}.nav{flex-direction:row;overflow:auto;gap:3px;padding-bottom:2px}.nav button{padding:8px 10px;flex-shrink:0;font-size:11px}.nav button svg{width:15px}.side-divider,.side-help,.sidebar-bottom{display:none}.topbar{padding:0 18px;height:48px}.topright{gap:8px}.sync{font-size:10px}.breadcrumb{font-size:10px}.workspace{padding:23px 18px}.page-heading{align-items:flex-start;margin-bottom:20px;gap:15px}.page-heading h1{font-size:24px}.page-heading p{font-size:12px;max-width:250px}.page-heading .actions button{font-size:11px;padding:8px 10px}.periodbar{gap:10px;margin-bottom:20px}.periodbar .range-title{order:3;width:100%;margin-left:0;font-size:12px}.periodbar .segments{margin-left:0}.periodbar .segments button{padding:7px 11px}.metrics{grid-template-columns:repeat(2,1fr);row-gap:20px}.metric{padding-left:0;border-right:0}.metric .value{font-size:27px}.metric .label{font-size:11px}.metric .detail{font-size:10px}.attention-list{display:block}.attention-item{border-bottom:1px solid var(--line)}.panel-grid{grid-template-columns:1fr}.search-wrap input{width:165px}.form-grid{gap:14px}.topright .live-clock{display:none}.auth-screen{grid-template-columns:1fr}.auth-story{padding:30px}.auth-story .brand{margin-bottom:28px}.auth-story h1{font-size:30px;max-width:370px}.auth-story>p{font-size:13px;margin-top:14px}.auth-proof{display:none}.auth-right{padding:35px 25px}.surface-head{padding:17px}.table-toolbar{padding:15px}.table-foot{padding:12px 15px}.import-zone{margin:0 15px 15px}.calendar-day{min-height:100px}.overview-grid{gap:17px}.auth-story .brand small{display:block}}
@media(max-width:430px){.page-heading{flex-direction:column;gap:14px}.page-heading p{max-width:100%}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.periodbar .segments{margin-left:auto}.periodbar .date-controls{width:100%}.periodbar .segments{margin-left:0}.periodbar .range-title{width:auto;flex:1;text-align:right;order:0;font-size:11px}.segments button{padding:7px 9px}.panel-content,.panel-head{padding:20px}.metrics{gap:18px}.notice{padding:10px;font-size:11px}.topright .sync{max-width:165px}.breadcrumb span{display:none}.table-toolbar .search-wrap{width:100%}.table-toolbar .search-wrap input{width:100%}.filters{width:100%}.filters select{flex:1}.surface-head{align-items:flex-start}.auth-story{padding:26px}.auth-right{padding:30px 24px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.sidebar,.topbar,.actions,.periodbar,.table-toolbar,button{display:none!important}.app{display:block}.workspace{padding:0}.surface{break-inside:avoid}.overview-grid{display:block}.attention{margin-top:20px}.table-scroll,.timeline-scroll{overflow:visible}body{background:#fff}dialog{display:none}}
.week-grid{grid-template-columns:repeat(7,minmax(105px,1fr));min-width:735px}
.table-scroll table{min-width:790px}.table-scroll td:first-child{min-width:175px}.table-scroll .job-name{min-width:140px}
.scroll-hint{display:none;font-size:11px;color:var(--muted);padding:9px 17px;background:#f6f9f5;border-top:1px solid var(--line)}
@media(max-width:800px){.scroll-hint{display:block}.calendar{min-width:0;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day{min-height:100px;padding:7px 4px;gap:6px}.calendar .weekday{font-size:10px;padding:10px 2px}.calendar-day .cal-count{font-size:9px;line-height:1.3}.calendar-day .cal-alert{font-size:8px;line-height:1.3}.calendar-day .day-number{font-size:11px}.week-grid{grid-template-columns:repeat(7,150px);min-width:1050px}.calendar-day.today .day-number{width:22px;height:22px}.week-job strong{font-size:12px}.week-job small{font-size:11px}}
input::placeholder,textarea::placeholder,.hours,.empty-track,.week-day .no-jobs,.calendar-day.outside,.calendar-day.outside .cal-count{color:#627269}
:focus-visible{outline-color:#26764f}.sidebar :focus-visible{outline-color:#96c9ab}
@media(max-width:800px){.calendar-day .cal-alert{font-size:9px}}
.mobile-menu-toggle{display:none}
.shift-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}
.priority-context{font-size:12px;color:var(--muted);padding:0 20px 15px;margin:0}
.priority-item{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:16px 20px;background:transparent;white-space:normal;overflow-wrap:anywhere}
.priority-item strong{display:block;font-size:13px}.priority-item>span{display:block;font-size:12px;margin-top:6px;color:var(--muted)}
.priority-item p{font-size:12px;line-height:1.5;margin-top:8px}.priority-item .next{color:var(--green);font-weight:600}.priority-footer{padding:15px 20px}
.shift-row{padding:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.shift-row h3{font-size:16px;overflow-wrap:anywhere}.shift-row h3 button{text-align:left;white-space:normal}.shift-row p{font-size:12px;color:var(--muted);margin-top:7px}.shift-status,.shift-actions{display:flex;flex-wrap:wrap;gap:8px}.shift-status{margin-top:12px}.shift-actions{align-items:center;align-content:center;justify-content:flex-end;flex-shrink:0;max-width:180px}
.saved-views{padding:12px 20px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;border-top:1px solid var(--line)}.saved-views label{font-size:12px;display:flex;align-items:center;gap:10px}.saved-views select{max-width:240px}.saved-views span{margin-left:auto}
.draft-row{padding:18px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.draft-row p{font-size:12px;margin:10px 0}.draft-row .actions{margin-top:12px}.draft-comparison{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:16px 0}.draft-comparison dt{font-size:12px;color:var(--muted);margin-bottom:8px}.draft-comparison dd{margin:0;font-size:13px;line-height:1.7;font-variant-numeric:tabular-nums}
[data-form="apply-schedule"] .form-actions{flex-wrap:wrap}
@media(max-width:1200px){.shift-layout{grid-template-columns:1fr}}
@media(max-width:600px){.shift-row{flex-direction:column;gap:12px}.shift-actions{justify-content:flex-start;max-width:none}.saved-views{padding:12px 15px}.saved-views label{width:100%}.saved-views select{flex:1;min-width:0}.saved-views span{margin-left:0}.draft-comparison{gap:10px}}
@media(max-width:800px){.mobile-menu-toggle{display:inline-flex;margin-left:auto;padding:7px 10px;font-size:11px;color:#edf5ee;background:#2d5041;border-color:#53725c}.nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible}.nav button{display:none;justify-content:center;padding:8px 4px;font-size:11px}.nav button[data-route="overview"],.nav button[data-route="schedule"],.nav button[data-route="jobs"],.nav button[data-route="shift"]{display:inline-flex}.nav.expanded{grid-template-columns:repeat(3,minmax(0,1fr))}.nav.expanded button{display:inline-flex}.nav .navcount{margin-left:0}}
.sidebar .mobile-menu-toggle:hover:not(:disabled){background:#365e46;border-color:#7a9e85;color:#fff}

.demo-banner{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;margin-bottom:22px;padding:12px 16px;background:#faf0d9;border:1px solid #d3b371;border-radius:6px;color:#644816;font-size:12px}.demo-banner strong{letter-spacing:.04em}.demo-banner a{margin-left:auto;color:#244e3c;font-weight:600}

.quick-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:0 20px 16px}.quick-filters button{font-size:12px;padding:7px 10px}.quick-filters button.selected{background:#e3f0e6;border-color:#729983;color:#205638;font-weight:600}.quick-filters>span{margin-left:auto;font-size:12px;color:var(--muted)}.attention-list .attention-item:last-child{border-bottom:0}
/* Office monitor: aligned dispatch rows, low-glare forest surfaces, explicit recorded states. */
/* The daily timeline keeps true bar widths; the numbered agenda carries readable detail. */
.wall-day-board{gap:.5em!important;overflow:auto!important;padding:.8em 1.5em .7em!important}.wall-day-board .wall-controls{flex-direction:row}.wall-day-board .wall-header{gap:1.4em}.wall-day-board .wall-brand h1{font-size:1.5em}.wall-day-board .wall-date strong{font-size:2em}.wall-day-board .wall-alerts h2{font-size:1em}.wall-day-board .wall-issue,.wall-day-board .wall-clear{min-height:5.5em;padding:.6em .85em}.wall-day-board .wall-issue h3{font-size:1em}.wall-day-board .wall-issue p{font-size:.85em}.wall-day-board .wall-issue strong{font-size:.8em}.day-plan{--name-width:14%;display:flex;flex:1;min-height:min-content;flex-direction:column;gap:.5em}.day-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1em}.day-toolbar h2{font-size:1.25em;font-weight:600;letter-spacing:-.02em}.day-toolbar p{font-size:.78em;color:var(--wall-muted);margin-top:.25em}.day-controls{display:flex;gap:.4em;align-items:center}.day-controls input{font:inherit;font-size:.8em;background:var(--wall-panel);color:var(--wall-text);border:1px solid var(--wall-line);padding:.35em .5em;min-width:0;width:10.5em;min-height:2.2em;border-radius:.3em}.day-legend{display:flex;flex-wrap:wrap;gap:.6em 1.2em;font-size:.72em;color:var(--wall-muted)}.day-legend>span:first-child{margin-right:auto}.day-legend>span:not(:first-child){display:flex;align-items:center;gap:.4em}.day-legend>span:not(:first-child):before{content:'';width:.65em;height:.65em;background:var(--task-fill);border:1px solid var(--task-edge)}
.day-plan .planned{--task-fill:#284b60;--task-edge:#81b3d0;--task-text:#daeffb}.day-plan .running{--task-fill:#285f45;--task-edge:#9ae0b9;--task-text:#d7f5e3}.day-plan .done{--task-fill:#293c36;--task-edge:#78988a;--task-text:#adc3b8}.day-plan .held{--task-fill:#59482a;--task-edge:#f1c47d;--task-text:#ffe1a3}.day-plan .unknown{--task-fill:#3d354b;--task-edge:#b8a4d0;--task-text:#e6d8f5}
.day-axis{display:grid;grid-template-columns:var(--name-width) minmax(0,1fr);font-size:inherit;color:var(--wall-muted);padding:.8em .8em .4em;flex:none}.day-axis>div{position:relative;margin-left:.65em;margin-right:0;height:1em}.day-axis>span{font-size:.72em}.day-axis>div>span{font-size:.72em;position:absolute;transform:translateX(-50%);white-space:nowrap}.day-axis>div>span:first-child{transform:none}.day-axis>div>span:nth-child(13){transform:translateX(-100%)}.day-now-label{position:absolute;bottom:1.6em;transform:translateX(-50%);font-size:.72em;white-space:nowrap;background:#f1c47d;color:#292413;padding:.2em .45em;border-radius:.2em;z-index:3}.day-now-label.near-end{transform:translateX(-100%)}.day-now-label.near-start{transform:none}.day-rows{display:grid;grid-template-rows:repeat(4,auto);gap:.4em;flex:1;min-height:0}.day-machine{display:grid;grid-template-columns:var(--name-width) minmax(0,1fr);background:var(--wall-panel);border:1px solid #29463a;border-radius:.35em;padding:.6em .8em;min-width:0;gap:0}.day-machine:nth-child(even){background:var(--wall-panel-alt)}.day-machine-name{padding-right:.9em;min-width:0}.day-machine-name h2{font-size:1.85em;line-height:1.05;font-weight:650;letter-spacing:-.025em}.day-machine-name>span{display:block;font-size:.75em;color:var(--wall-muted);margin-top:.3em}.day-machine-name>strong{display:block;font-size:.8em;font-weight:500;margin-top:.5em}.day-machine-name p{font-size:.69em;color:var(--wall-green);line-height:1.3;margin-top:.4em;overflow-wrap:anywhere}.day-machine-name small{display:block;font-size:.65em;line-height:1.3;color:var(--wall-amber);margin-top:.4em}.day-work{min-width:0;padding-left:.65em;border-left:1px solid var(--wall-line);display:flex;flex-direction:column;justify-content:center;gap:.5em}.day-track{position:relative;height:calc(var(--tracks) * 1.5em);flex:none}.day-gridline{position:absolute;top:0;bottom:0;border-left:1px solid #365047;opacity:.65}.day-now{position:absolute;top:0;bottom:0;width:2px;background:var(--wall-amber);z-index:2;pointer-events:none}.day-bar{position:absolute;height:1.3em;min-width:2px;background:var(--task-fill);color:var(--task-text);border:1px solid var(--task-edge);border-radius:.2em;display:flex;align-items:center;gap:.5em;overflow:hidden;padding:0 .25em;font-size:inherit}.day-bar b{font-size:.72em;min-width:1em;text-align:center}.day-bar>span{font-size:.72em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-bar.conflict{border-style:dashed;border-color:var(--wall-red)}.day-empty-track{font-size:.8em;color:var(--wall-muted);position:relative;top:.35em;padding:.2em .5em;background:var(--wall-panel)}.day-tasks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--task-columns),minmax(0,1fr));gap:.4em .7em}.day-task{display:flex;align-items:flex-start;gap:.4em;min-width:0}.day-task-number{font-size:.65em;background:var(--task-fill);border:1px solid var(--task-edge);color:var(--task-text);width:1.6em;height:1.6em;flex:none;display:grid;place-items:center;border-radius:.2em;margin-top:.15em}.day-task>div{min-width:0}.day-task-time{font-size:.85em;font-weight:650;color:var(--wall-text);line-height:1.3}.day-task strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:.95em;font-weight:550;line-height:1.25;margin-top:.16em}.day-task p{font-size:.65em;line-height:1.3;color:var(--task-text);margin-top:.2em;overflow-wrap:anywhere}.day-task em{font-style:normal;color:var(--wall-red);font-weight:600}.day-task small{font-size:.63em;color:var(--wall-muted);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.15em}.wall-day-dense{height:auto!important;min-height:100dvh}.wall-day-dense .day-plan,.wall-day-dense .day-rows{flex:none}.wall-day-dense .day-rows{grid-template-rows:auto}
@media(max-width:1100px){.wall-day-board .day-plan{--name-width:16%;flex:none}.day-toolbar{align-items:flex-start;flex-direction:column}.day-controls{flex-wrap:wrap}.day-axis{font-size:.62em}.day-rows{flex:none;grid-template-rows:auto}.day-tasks{grid-template-columns:repeat(2,minmax(0,1fr))}.day-machine-name h2{font-size:1.5em}.day-machine-name p{font-size:.75em}.day-legend{font-size:.7em}.day-task strong{font-size:.95em}}
@media(max-width:600px){.day-axis{display:none}.day-machine{display:block;padding:1em}.day-machine-name{display:flex;align-items:baseline;gap:.5em;flex-wrap:wrap;padding:0 0 .8em}.day-machine-name p,.day-machine-name small{width:100%}.day-work{border-left:0;padding-left:0}.day-track{display:none}.day-tasks{grid-template-columns:1fr;gap:1em}.day-task-time{font-size:.92em}.day-task strong{font-size:1.05em}.day-task p{font-size:.78em}.day-task small{font-size:.75em}.day-legend>span:first-child{width:100%}.day-controls{gap:.5em}.day-controls input{order:-1;width:100%}.day-controls button{flex:1}.day-toolbar h2{font-size:1.3em}}
.wallboard{--wall-bg:#0c1916;--wall-panel:#142923;--wall-panel-alt:#172f28;--wall-line:#365047;--wall-text:#f1f6f3;--wall-muted:#adc3b8;--wall-green:#9ae0b9;--wall-amber:#f1c47d;--wall-red:#ffaea3;--wall-columns:12% 36% 18% 34%;height:100dvh;padding:1.45em 1.8em 1em;display:flex;flex-direction:column;gap:.9em;background:var(--wall-bg);color:var(--wall-text);overflow:hidden;font:clamp(12px,min(1vw,1.777vh),44px)/1.35 'Segoe UI',Arial,sans-serif;font-variant-numeric:tabular-nums;color-scheme:dark}
.wallboard ::selection{background:#527968;color:#fff}.wallboard :focus-visible{outline-color:var(--wall-green)}
.clearance-receipt{padding:18px;background:#edf5ee;border:1px solid #b5cdbb;border-radius:6px;color:#244c34;overflow-wrap:anywhere}.clearance-receipt span{display:block;font-size:12px;margin-top:5px}.clearance-receipt p{margin-top:14px;white-space:pre-wrap;line-height:1.6}.blocker-detail{min-width:210px;max-width:360px;overflow-wrap:anywhere}.wallboard .wall-issue.cleared{background:#173a2d;border-color:#527968}.wallboard .wall-issue.cleared h3{color:var(--wall-green)}

.wall-header{display:flex;align-items:center;gap:2em;flex:none}.wall-brand{display:flex;align-items:center;gap:.8em;flex:1;min-width:0}.wall-brand .brandmark{background:var(--wall-green);color:#10271e;width:2.7em;height:2.7em;font-size:.9em;border-radius:.35em}.wall-brand h1{font-size:1.7em;line-height:1.1;letter-spacing:-.025em;font-weight:650}.wall-brand p{color:var(--wall-muted);font-size:.85em;margin-top:.35em}.wall-date{text-align:right}.wall-date strong{font-size:2.5em;line-height:1;letter-spacing:-.025em;font-weight:600}.wall-date span{display:block;color:var(--wall-muted);font-size:.85em;margin-top:.25em}.wall-controls{display:flex;flex-direction:column;gap:.4em}
.wallboard button{font-size:.8em;line-height:1.2;min-height:2em;padding:.5em .8em;border:1px solid var(--wall-line);border-radius:.3em;background:transparent;color:var(--wall-text);white-space:nowrap}.wallboard button:hover:not(:disabled){background:#29483b;border-color:#709885;color:#fff}
.wall-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1em;padding:.75em 0 .9em;border-bottom:1px solid var(--wall-line);flex:none}.wall-stats>div{display:flex;gap:.8em;align-items:center;min-width:0;padding-left:1em;border-left:1px solid var(--wall-line)}.wall-stats>div:first-child{padding-left:0;border:0}.wall-stats strong{font-size:2.15em;font-weight:600;line-height:1;color:var(--wall-green);white-space:nowrap;letter-spacing:-.025em}.wall-stats span{font-size:1em;line-height:1.3}.wall-stats small{display:block;color:var(--wall-muted);font-size:.75em;margin-top:.2em}.wall-stats>div:last-child strong{color:var(--wall-amber)}
.wall-machines{display:flex;flex-direction:column;flex:1;min-height:0;gap:.4em}.wall-column-head,.wall-machine{display:grid;grid-template-columns:var(--wall-columns)}.wall-column-head{flex:none;color:var(--wall-muted);font-size:.78em;padding:0 1.3em .2em;letter-spacing:.035em}.wall-column-head>span{padding-left:1em}.wall-column-head>span:first-child{padding-left:0}.wall-machine-rows{display:grid;grid-template-rows:repeat(4,minmax(0,1fr));flex:1;min-height:0;gap:.4em}.wall-machine{background:var(--wall-panel);border:1px solid #29463a;border-radius:.35em;padding:.75em 1em;align-items:center;min-height:0;min-width:0;overflow:hidden}.wall-machine:nth-child(even){background:var(--wall-panel-alt)}.wall-machine>div{padding:0 1em;min-width:0}.wall-machine>div:last-child{padding-right:0}.wall-machine-id{display:flex;flex-direction:column;gap:.4em;min-width:0}.wall-machine h2{font-size:2.15em;line-height:1;letter-spacing:-.025em;font-weight:650}.wall-state{font-size:1em;font-weight:600;display:flex;gap:.45em;align-items:center;color:var(--wall-muted)}.wall-state i{width:.42em;height:.42em;border-radius:50%;background:currentColor;flex:none}.wall-machine.running .wall-state{color:var(--wall-green)}.wall-machine.warning .wall-state{color:var(--wall-amber)}.wall-availability{font-size:.78em;color:var(--wall-muted)}.wall-machine.warning .wall-availability{color:var(--wall-amber)}
.wall-current h3{font-size:1.5em;line-height:1.16;font-weight:600;letter-spacing:-.02em;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.wall-reference{font-size:.82em;color:var(--wall-muted);margin-top:.55em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wall-hold{font-size:.78em;color:var(--wall-amber);margin-top:.25em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wall-finish{border-left:1px solid var(--wall-line)}.wall-finish>strong{font-size:2em;font-weight:600;line-height:1.1;letter-spacing:-.025em}.wall-finish>span:not(.wall-mobile-label){display:block;font-size:.75em;color:var(--wall-muted)}.wall-finish>p{font-size:.95em;line-height:1.25;margin-top:.35em;color:var(--wall-green)}.wall-finish.late>strong,.wall-finish.late>p{color:var(--wall-red)}.wall-machine.neutral .wall-finish>p{color:var(--wall-muted)}
.wall-next{border-left:1px solid var(--wall-line)}.wall-next-label{display:flex;align-items:center;gap:.55em;flex-wrap:wrap;font-size:.75em;color:var(--wall-muted);line-height:1.2}.wall-ready{font-size:.95em;border:1px solid var(--wall-line);border-radius:.25em;padding:.2em .45em}.wall-ready.ready{color:var(--wall-green);border-color:#527968}.wall-ready.blocked{color:var(--wall-amber);border-color:#846737}.wall-next>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;font-size:1.17em;line-height:1.2;font-weight:600;margin-top:.4em}.wall-next>p{font-size:.78em;color:var(--wall-muted);line-height:1.3;margin-top:.4em}.wall-mobile-label{display:none}
.wall-alerts{flex:none}.wall-alerts>header{display:flex;align-items:center;justify-content:space-between;gap:1em;margin-bottom:.6em}.wall-alerts>header>div{display:flex;align-items:center;gap:.7em}.wall-alerts h2{font-size:1.1em;font-weight:600;letter-spacing:-.015em}.wall-alerts>header span{font-size:.78em;color:var(--wall-muted)}.wall-issues{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6em}.wall-issue,.wall-clear{padding:.8em 1em;background:#243229;border:1px solid #665e40;border-radius:.35em;min-width:0;min-height:6.6em}.wall-issue h3,.wall-clear h3{font-size:1.08em;font-weight:600;line-height:1.2;color:var(--wall-amber);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wall-issue p,.wall-clear p{font-size:.95em;line-height:1.3;margin-top:.3em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}.wall-issue strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:.85em;font-weight:400;color:var(--wall-muted);line-height:1.3;margin-top:.3em}.wall-issue.danger{background:#332824;border-color:#74524a}.wall-issue.danger h3{color:var(--wall-red)}.wall-issue.neutral,.wall-clear{background:var(--wall-panel);border-color:var(--wall-line)}.wall-issue.neutral h3,.wall-clear h3{color:var(--wall-text)}.wall-clear{grid-column:1/-1}
.wall-footer{display:flex;align-items:center;justify-content:space-between;gap:1em;color:var(--wall-muted);font-size:.72em;flex:none;min-height:1.5em}.wall-connection{color:var(--wall-muted)}.wall-connection.stale{color:#ffc2b9;background:#442921;border:1px solid #a96c5e;padding:.35em .65em;font-weight:600}.wall-footer>span:last-child{white-space:nowrap}
@media(min-width:1101px) and (max-height:650px){.wallboard{height:auto;min-height:100dvh;overflow:visible;font-size:14px;padding:1em}.wall-machine-rows{grid-template-rows:repeat(4,minmax(120px,auto))}.wall-machine{padding:.7em 1em}}
@media(max-width:1100px){.wallboard{height:auto;min-height:100dvh;overflow:visible;font-size:16px;padding:24px;gap:18px}.wall-header{flex-wrap:wrap;gap:18px}.wall-brand{flex-basis:55%}.wall-date strong{font-size:2.2em}.wall-controls{flex-direction:row;margin-left:auto}.wall-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.wall-stats>div:nth-child(3){border:0;padding-left:0}.wall-column-head{display:none}.wall-machine-rows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:14px}.wall-machine{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:20px;align-items:start;overflow:visible}.wall-machine-id{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr}.wall-machine-id h2{grid-row:span 2}.wall-machine-id>span{text-align:right;justify-content:flex-end}.wall-machine>div{padding:0}.wall-current{grid-column:1/-1}.wall-current h3{font-size:1.4em}.wall-finish{border:0}.wall-next{grid-column:1/-1;border-left:0;border-top:1px solid var(--wall-line);padding-top:15px!important}.wall-next>strong{font-size:1.1em}.wall-mobile-label{display:block;color:var(--wall-muted);font-size:.75em;margin-bottom:.5em}.wall-alerts>header,.wall-alerts>header>div{flex-wrap:wrap}.wall-issues{grid-template-columns:1fr}.wall-footer{flex-wrap:wrap}.wall-footer>span:last-child{white-space:normal}}
@media(max-width:600px){.wallboard{padding:18px;font-size:15px}.wall-header{gap:14px}.wall-brand{flex-basis:100%}.wall-brand h1{font-size:1.5em}.wall-date{text-align:left}.wall-date span{font-size:.7em}.wall-controls{flex-direction:column}.wall-stats strong{font-size:1.8em}.wall-stats span{font-size:.8em}.wall-stats small{font-size:.85em}.wall-stats>div{gap:.65em;padding-left:.7em}.wall-machine-rows{grid-template-columns:1fr}.wall-alert-controls{gap:.5em!important}.wall-issue p{white-space:normal;-webkit-line-clamp:2}.quick-filters{padding:0 15px 15px}.quick-filters>span{width:100%;margin:0}}

.day-empty-list{font-size:.85em;color:var(--wall-muted);padding:.2em 0}
/* Office monitors: neutral surfaces, status color confined to evidence. */
.wall-day-board{--wall-bg:#14161b;--wall-panel:#1e2128;--wall-panel-alt:#1e2128;--wall-line:#3b414d;--wall-text:#f2f3f5;--wall-muted:#b7beca;--wall-green:#9bd7b6;--wall-amber:#f1c77d;--wall-red:#ffafa6;background:var(--wall-bg);padding:1em 1.4em .75em!important;gap:.75em!important}
.wall-day-board .brandmark{background:#dce2ec;color:#20242c}.wall-day-board .wall-header{padding-bottom:.55em;border-bottom:1px solid var(--wall-line)}.wall-day-board .wall-brand h1{font-size:1.4em;font-weight:600}.wall-day-board .wall-brand p{font-size:.7em;color:var(--wall-muted)}.wall-day-board .wall-date strong{font-size:2.3em}.wall-day-board .wall-date span{font-size:.7em}.wall-day-board button:hover:not(:disabled){background:#303640;border-color:#8793a6;color:#fff}.wall-day-board ::selection{background:#526781;color:#fff}.wall-day-board :focus-visible{outline-color:#b7cee9}
.wall-day-board .day-plan{--name-width:10em;gap:.5em}.wall-day-board .day-toolbar h2{font-size:1.05em}.wall-day-board .day-toolbar p{font-size:.75em}.wall-day-board .day-legend{font-size:.67em;gap:.5em 1.2em}.wall-day-board .day-axis{padding-top:1.1em;padding-bottom:.35em}.wall-day-board .day-axis>span{font-size:.7em}.wall-day-board .day-axis>div>span{font-size:.75em}.wall-day-board .day-now-label{background:#dbe3ef;color:#1c2635;font-weight:650}.wall-day-board .day-now{background:#dbe3ef}
.wall-day-board .day-machine{background:var(--wall-panel);border-color:#343a45;border-radius:.35em;padding:.8em}.wall-day-board .day-machine-name h2{font-size:1.7em}.wall-day-board .day-machine-name>span{font-size:.7em;margin-top:.55em}.wall-day-board .day-machine-name p{font-size:.7em;color:var(--wall-muted);line-height:1.5;margin-top:.65em}.wall-day-board .day-work{border-left:0;padding-left:.65em;gap:.65em}.wall-day-board .day-gridline{border-color:#667080;opacity:.25}.wall-day-board .day-rows{gap:.5em}
.wall-day-board .planned{--task-fill:#344b65;--task-edge:#829fbe;--task-text:#e1ebf6}.wall-day-board .running{--task-fill:#305745;--task-edge:#9bd7b6;--task-text:#d8f1e4}.wall-day-board .done{--task-fill:#363c46;--task-edge:#737e8d;--task-text:#c3cbd7}.wall-day-board .held{--task-fill:#5d4c31;--task-edge:#e8bf7c;--task-text:#f5d499}.wall-day-board .unknown{--task-fill:#292e37;--task-edge:#a1aab8;--task-text:#d5dae3}.wall-day-board .day-bar.unknown{border-style:dashed}.wall-day-board .day-bar{height:1.2em;border-radius:.15em}.wall-day-board .day-bar b{font-size:.78em}.wall-day-board .day-tasks{gap:.6em 1.2em}.wall-day-board .day-task{gap:.55em}.wall-day-board .day-task-number{font-size:.7em;border:0;background:transparent;color:var(--task-text);width:1.2em;justify-content:start;margin-top:.15em}.wall-day-board .day-task-time{font-size:.93em;line-height:1.35;font-weight:600}.wall-day-board .day-task strong{font-size:1em;line-height:1.35;font-weight:500;margin-top:.3em}.wall-day-board .day-task p{color:var(--wall-muted);font-size:.68em;line-height:1.4;margin-top:.35em}.wall-day-board .day-task.held p>span{color:var(--wall-amber)}.wall-day-board .day-task.running p>span{color:var(--wall-green)}.day-backlog{display:flex;gap:1em;flex-wrap:wrap;font-size:.65em;color:var(--wall-muted);margin:0;padding:.1em .8em}.day-backlog>span:last-child{margin-left:auto}
.wall-day-board .wall-alerts{border-top:1px solid var(--wall-line);padding-top:.65em}.wall-day-board .wall-alerts h2{font-size:.95em}.wall-day-board .wall-issue,.wall-day-board .wall-clear{background:var(--wall-panel);border-color:#414750;min-height:5em;padding:.7em .9em}.wall-day-board .wall-issue.danger{background:var(--wall-panel);border-color:#69514f}.wall-day-board .wall-issue.cleared{background:var(--wall-panel);border-color:#4e685b}.wall-day-board .wall-issue h3{font-size:.95em}.wall-day-board .wall-issue p{font-size:.85em}.wall-day-board .wall-issue strong{font-size:.75em}.wall-day-board .wall-footer{font-size:.65em}.wall-day-board .wall-connection.stale{background:#392827;color:#ffd1cc;border-color:#946761}
@media(min-width:1101px){.wall-day-board{gap:.45em!important;padding:.7em 1.4em .6em!important}.wall-day-board .wall-header{padding-bottom:.25em}.wall-day-board .day-axis{padding-top:.8em}.wall-day-board .day-machine{padding:.55em .8em}.wall-day-board .day-work{gap:.4em}.wall-day-board .day-rows{gap:.4em}.wall-day-board .day-task-time{font-size:.9em;line-height:1.25}.wall-day-board .day-task strong{font-size:.95em;line-height:1.2;margin-top:.18em}.wall-day-board .day-task p{font-size:.65em;line-height:1.3;margin-top:.2em}.wall-day-board .day-machine-name p{font-size:.65em;line-height:1.3;margin-top:.4em}.wall-day-board .wall-alerts{padding-top:.4em}.wall-day-board .wall-issue,.wall-day-board .wall-clear{min-height:4.8em;padding:.5em .8em}}
@media(max-width:1100px){.wall-day-board .day-plan{--name-width:10em}.wall-day-board .day-tasks{grid-template-columns:repeat(2,minmax(0,1fr))}.wall-day-board .day-machine-name h2{font-size:1.5em}}
@media(max-width:600px){.wall-day-board .day-tasks{grid-template-columns:1fr;gap:1.1em}.wall-day-board .day-machine-name{padding-bottom:1em}.wall-day-board .day-machine-name>span{margin:0}.wall-day-board .day-machine-name p{margin-top:0}.wall-day-board .day-work{padding-left:0}.wall-day-board .day-task-time{font-size:.95em}.wall-day-board .day-task p{font-size:.8em}.wall-day-board .day-backlog{font-size:.75em;gap:.5em}.wall-day-board .day-backlog>span{width:100%;margin:0}.wall-day-board .wall-footer{font-size:.75em}}
.job-status-summary{display:flex;flex-wrap:wrap;gap:16px 24px;margin:0}.job-status-summary dt{font-size:12px;color:var(--muted);margin-bottom:7px}.job-status-summary dd{margin:0}.next-action-text{font-size:13px;line-height:1.6;max-width:70ch;margin:10px 0 16px;overflow-wrap:anywhere}.empty>button{margin:5px}.shift-row>div:first-child{min-width:0}
.timeline-instructions{padding:12px 20px;background:#f5f8f4;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;color:var(--ink)}.timeline-instructions>span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.timeline-instructions>strong{display:block;font-size:11px;color:var(--green);margin-top:6px}.jobbar.can-drag{cursor:grab;touch-action:pan-y;padding-left:16px;padding-right:16px;user-select:none}.jobbar.is-draft{outline:2px dashed var(--green);outline-offset:2px}.jobbar.is-dragging{cursor:grabbing;z-index:8;outline:2px solid var(--green);box-shadow:0 5px 14px #183e2d26;transition:none}.jobbar.drag-conflict{outline-color:var(--red);background:#f6e3df}.job-resize{position:absolute;top:0;bottom:0;width:13px;display:grid;place-items:center;cursor:ew-resize;touch-action:pan-y}.job-resize:after{content:'';width:3px;height:22px;border-left:1px solid currentColor;border-right:1px solid currentColor;opacity:.65}.job-resize.start{left:0}.job-resize.end{right:0}.timeline-dragging{user-select:none;cursor:grabbing}.timeline-drag-tip{position:fixed;z-index:110;max-width:min(510px,calc(100vw - 16px));padding:10px 14px;background:#183e2d;color:#fff;border-radius:6px;box-shadow:0 5px 16px #183e2d26;font-size:12px;line-height:1.6;pointer-events:none}.timeline-drag-tip[hidden]{display:none}

/* One job per row: text and time bar share the same horizontal position. */
.wall-row-board{--machine-col:8.8em;--job-col:22em;--time-col:13em;--status-col:9.5em}
.wall-row-board .day-plan{gap:.45em}.wall-row-board .gantt-axis{display:grid;grid-template-columns:var(--machine-col) var(--job-col) var(--time-col) var(--status-col) minmax(0,1fr);align-items:end;padding:1.35em .8em .55em;gap:0;color:var(--wall-muted)}.gantt-axis>span{font-size:.7em;padding-right:.8em}.gantt-hours{position:relative;height:1em;font-size:inherit}.gantt-hours>span{position:absolute;font-size:.7em;white-space:nowrap;transform:translateX(-50%)}.gantt-hours>span:first-child{transform:none}.gantt-hours>span:nth-child(13){transform:translateX(-100%)}
.wall-row-board .day-machine{grid-template-columns:var(--machine-col) minmax(0,1fr);padding:.15em .8em}.wall-row-board .day-machine-name{padding:.35em .8em .35em 0}.wall-row-board .day-machine-name h2{font-size:1.6em}.wall-row-board .day-machine-name p{font-size:.65em}.wall-row-board .day-work{display:flex;padding:0;gap:0;justify-content:center}.wall-row-board .day-rows{grid-template-rows:repeat(4,auto);gap:.3em}
.gantt-task{display:grid;grid-template-columns:var(--job-col) var(--time-col) var(--status-col) minmax(0,1fr);align-items:center;min-height:2.2em;padding:.16em 0;border-bottom:1px solid #30353e}.gantt-task:last-child{border-bottom:0}.gantt-job{min-width:0;padding-right:1.2em}.gantt-job strong{display:block;font-size:.95em;line-height:1.2;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-job small{display:block;color:var(--wall-muted);font-size:.64em;line-height:1.2;margin-top:.12em}.gantt-time{font-size:.78em;font-variant-numeric:tabular-nums;padding-right:1em;line-height:1.4}.gantt-status{font-size:.72em;padding-right:1em;line-height:1.35;color:var(--wall-muted)}.gantt-status em{display:block;font-style:normal;color:var(--wall-red)}.gantt-task.running .gantt-status{color:var(--wall-green)}.gantt-task.held .gantt-status{color:var(--wall-amber)}.gantt-track{height:1.8em;position:relative;min-width:0}.wall-row-board .gantt-track .day-bar{top:.35em;height:1.1em}.wall-row-board .gantt-track .day-now{top:-.3em;bottom:-.3em}.wall-row-board .gantt-track .day-gridline{top:-.3em;bottom:-.3em}.wall-row-board .day-empty-list{padding:.5em 0;font-size:.85em}
@media(max-width:1100px){.wall-row-board{--machine-col:8em;--job-col:minmax(0,1fr);--time-col:11em;--status-col:8em}.wall-row-board .gantt-axis{grid-template-columns:var(--machine-col) var(--job-col) var(--time-col) var(--status-col);padding-top:.6em}.gantt-hours,.gantt-track{display:none}.gantt-task{grid-template-columns:var(--job-col) var(--time-col) var(--status-col);padding:.7em 0}.gantt-job strong{white-space:normal}.wall-row-board .day-machine{padding:.8em}.wall-row-board .day-machine-name h2{font-size:1.5em}}
@media(max-width:600px){.wall-row-board .gantt-axis{display:none}.wall-row-board .day-machine{display:block}.wall-row-board .day-machine-name{padding:0 0 .65em}.wall-row-board .gantt-task{grid-template-columns:minmax(0,1fr) auto;gap:.5em}.gantt-job{grid-column:1/-1;padding:0}.gantt-job strong{font-size:1em}.gantt-job small{font-size:.75em}.gantt-time{font-size:.85em}.gantt-status{font-size:.8em;text-align:right;padding:0}.wall-row-board .day-machine-name p{font-size:.75em}}

@media(min-width:1101px){.wall-row-board .gantt-task{min-height:2em;padding:.1em 0}.wall-row-board .gantt-job strong{line-height:1.15}.wall-row-board .gantt-job small{line-height:1;margin-top:0}}

@media(min-width:1101px){.wall-row-board .gantt-track{height:1.5em}.wall-row-board .gantt-track .day-bar{top:.2em}.wall-row-board .wall-issue,.wall-row-board .wall-clear{min-height:3.8em}.wall-row-board .gantt-axis{padding-top:1em}}

/* Fixed office overview and paged queues. Job count never changes monitor height. */
.office-board{font-size:16px;height:100dvh;min-height:0;overflow:hidden;gap:10px!important;padding:12px 20px 8px!important}
.office-board .wall-header{gap:20px}.office-board .wall-brand h1{font-size:23px}.office-board .wall-brand p{font-size:12px}.office-board .wall-date strong{font-size:32px}.office-board .wall-date span{font-size:12px}
.office-board button,.office-board input,.office-board select{font-size:12px;padding:5px 9px;background:#20242c;color:#eef0f4;border:1px solid #424a58;border-radius:4px}
.office-board .overview-plan{flex:none;min-height:0;gap:0}.office-board .day-toolbar{margin:0 0 22px;align-items:center}.office-board .day-toolbar h2{font-size:16px}.office-board .day-toolbar h2>span{font-size:13px;font-weight:400;color:var(--wall-muted);margin-left:12px}.office-board .day-controls{gap:5px}.office-board .day-controls input{width:136px}
.overview-axis,.overview-lane{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px}.overview-axis{height:24px;color:var(--wall-muted);font-size:12px}.overview-axis>div{position:relative;margin-right:6px}.overview-axis>div>span{position:absolute;transform:translateX(-50%);white-space:nowrap}.overview-axis>div>span:first-child{transform:none}.overview-axis>div>span:nth-child(13){transform:translateX(-100%)}.office-board .day-now-label{top:-22px;font-size:11px;padding:2px 5px}
.overview-lanes{display:grid;gap:4px}.overview-lane{height:34px;align-items:center}.overview-lane>strong{font-size:16px;display:flex;align-items:center;justify-content:space-between;gap:6px}.overview-lane small{font-size:11px;color:var(--wall-muted);font-weight:400}.overview-track{height:30px;position:relative;background:#1b1e25;margin-right:6px}.overview-track>i{position:absolute;top:0;bottom:0;border-left:1px solid #363c47}.overview-bar{position:absolute;top:4px;height:22px;min-width:1px;background:var(--task-fill);border:1px solid var(--task-edge);color:var(--task-text);overflow:hidden;border-radius:2px}.overview-bar>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;line-height:20px;padding:0 6px}.office-board .overlap{--task-fill:#65403b;--task-edge:#de9d91;--task-text:#ffe1da}.office-board .mixed{--task-fill:#3e4450;--task-edge:#a8b3c4;--task-text:#edf0f5}.overview-track>i.overview-now{z-index:2;border-left:2px solid #f2f4f8;top:-4px;bottom:-4px}.overview-empty{font-size:12px;color:var(--wall-muted);padding:5px 8px;display:block}
.overview-legend{display:flex;gap:16px;align-items:center;font-size:11px;color:var(--wall-muted);padding:8px 0 0 112px}.overview-legend>span:not(:last-child):before{content:'';display:inline-block;width:8px;height:8px;margin-right:5px;background:var(--task-fill);border:1px solid var(--task-edge)}.overview-legend>span:last-child{margin-left:auto}
.office-queues{display:flex;flex:1;min-height:0;flex-direction:column;gap:8px}.queue-controls{display:flex;justify-content:space-between;align-items:center;gap:10px}.queue-controls>div{display:flex;align-items:center;gap:10px}.queue-controls h2{font-size:16px}.queue-controls span{font-size:12px;color:var(--wall-muted)}
.machine-queues{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;flex:1;min-height:0}.machine-queue{display:flex;flex-direction:column;min-height:0;min-width:0;background:#1e2128;border:1px solid #3b414d;padding:12px 14px 8px;border-radius:6px}.machine-queue>header{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.machine-queue>header h2{font-size:26px;line-height:1.1}.machine-queue>header>span{font-size:12px;color:var(--wall-muted)}
.machine-warning{font-size:12px;line-height:1.35;color:var(--wall-muted);margin-top:6px;min-height:33px;max-height:49px;overflow-wrap:anywhere}.machine-warning.has-warning{color:#f1c77d}.queue-pinned{padding:8px 0;border-bottom:1px solid #3b414d;min-width:0}.queue-pinned h3{font-size:13px;font-weight:600;display:flex;justify-content:space-between;gap:6px;color:#c1cbda;margin-bottom:4px}.queue-pinned h3>span{font-size:11px;font-weight:400;color:#b7beca}.queue-job{padding:7px 0;min-width:0}.queue-pinned .queue-job{padding:0}.queue-job-top{display:flex;justify-content:space-between;gap:8px;font-size:13px;line-height:1.3}.queue-state{color:var(--task-text);text-align:right}.queue-job>strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:18px;font-weight:550;line-height:1.2;margin:3px 0}.queue-job small{display:block;font-size:12px;color:var(--wall-muted);line-height:1.3}.queue-empty{font-size:14px;line-height:1.5;color:var(--wall-muted);padding:8px 0}.queue-remaining{flex:1;min-height:0;padding-top:8px}.queue-remaining>header{display:flex;justify-content:space-between;gap:6px;align-items:center}.queue-remaining h3,.queue-remaining>header>span{font-size:12px;color:#c1cbda;font-weight:400}.queue-page .queue-job+.queue-job{border-top:1px solid #333943}.machine-queue>footer{font-size:11px;color:#b7beca;padding-top:6px;border-top:1px solid #3b414d;margin-top:6px}
.office-focused .machine-queues{grid-template-columns:1fr}.office-focused .machine-queue{display:grid;grid-template-columns:1fr 1fr 2fr;gap:10px 24px;align-content:start}.office-focused .machine-queue>header,.office-focused .machine-warning,.office-focused .machine-queue>footer{grid-column:1/-1}.office-focused .queue-pinned{border-bottom:0}.office-focused .queue-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.office-focused .queue-page .queue-job{border:0}
.office-board .wall-alerts{flex:none;padding-top:6px}.office-board .wall-alerts>header{margin-bottom:5px}.office-board .wall-alerts h2{font-size:14px}.office-board .wall-alerts>header>div>span{font-size:12px}.office-board .wall-issues{gap:12px}.office-board .wall-issue,.office-board .wall-clear{min-height:0;padding:6px 10px}.office-board .wall-issue h3,.office-board .wall-clear h3{font-size:14px}.office-board .wall-issue p,.office-board .wall-clear p{font-size:12px;line-height:1.3;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.office-board .wall-issue strong{font-size:12px;line-height:1.3;margin-top:2px;-webkit-line-clamp:1}.office-board .wall-footer{font-size:11px;min-height:15px}
@media(min-width:1101px) and (max-height:850px){.office-board{gap:6px!important;padding:8px 16px 6px!important}.office-board .wall-header{padding-bottom:3px}.office-board .wall-brand h1{font-size:20px}.office-board .wall-date strong{font-size:27px}.office-board .day-toolbar{margin-bottom:19px}.overview-lane{height:27px}.overview-track{height:25px}.overview-bar{top:3px;height:19px}.overview-bar>span{line-height:17px}.overview-legend{padding-top:5px}.machine-queues{gap:10px}.machine-queue{padding:8px 10px 6px}.machine-queue>header h2{font-size:23px}.machine-warning{font-size:11px;min-height:30px;max-height:45px;margin-top:4px}.queue-pinned{padding:5px 0}.queue-job{padding:5px 0}.queue-job>strong{font-size:16px}.queue-job-top{font-size:12px}.queue-job small{font-size:11px}.queue-pinned h3{font-size:12px;margin-bottom:3px}.queue-pinned h3>span{font-size:10px}.queue-remaining{padding-top:5px}.queue-empty{padding:5px 0}.machine-queue>footer{padding-top:4px;margin-top:4px;font-size:10px}.office-board .wall-issue p,.office-board .wall-issue strong{font-size:11px}.office-board .wall-issue h3{font-size:13px}}
@media(min-width:2500px){.office-board{zoom:2;height:50dvh}}
@media(max-width:1100px){.office-board{height:auto;min-height:100dvh;overflow:visible;padding:16px!important}.office-board .wall-header{gap:12px}.office-board .day-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:28px}.office-board .day-toolbar h2>span{display:block;margin:4px 0 0}.office-board .day-controls{flex-wrap:wrap}.overview-axis,.overview-lane{grid-template-columns:65px minmax(0,1fr);gap:8px}.overview-lane>strong{display:block}.overview-lane small{display:none}.overview-axis>div>span:nth-child(even){display:none}.overview-legend{padding-left:0;flex-wrap:wrap;gap:8px}.overview-legend>span:last-child{margin-left:0}.machine-queues{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.office-queues{flex:none}.queue-controls{flex-wrap:wrap}.queue-controls>div:first-child{display:block}.queue-controls span{display:block;margin-top:4px}.machine-warning{max-height:none}.queue-remaining{min-height:170px}.machine-queue{min-height:0}.office-board .wall-issues{grid-template-columns:1fr}.office-board .wall-issue strong{-webkit-line-clamp:3}.office-board .wall-issue p{white-space:normal}}
@media(max-width:600px){.office-board .wall-brand{flex-basis:100%}.office-board .wall-controls{flex-direction:row}.office-board .wall-date strong{font-size:28px}.office-board .wall-brand h1{font-size:22px}.machine-queues{grid-template-columns:1fr}.machine-queue{padding:14px}.queue-job>strong{font-size:19px}.queue-job-top{font-size:13px}.queue-pinned{padding:10px 0}.overview-axis>div>span{font-size:10px}.overview-bar>span{display:none}.overview-lane{height:30px}.office-board .day-now-label{font-size:10px}.office-focused .machine-queue{display:flex}.office-focused .queue-page{display:block}.office-board .wall-alerts>header>div{gap:8px}}
@media(min-width:1101px) and (max-height:850px){.office-board .overview-lane{height:22px}.office-board .overview-track{height:22px}.office-board .overview-bar{height:18px;top:2px}.office-board .overview-bar>span{line-height:16px}.office-board .wall-header{min-height:44px}.office-board .wall-date strong{line-height:1.05}.office-board .day-toolbar{margin-bottom:16px}.office-board .machine-warning{min-height:30px;max-height:none}.office-board .queue-pinned{flex:none}.office-board .queue-job-top{flex-wrap:wrap;gap:2px 6px}.office-board .queue-state{margin-left:auto}.office-board .machine-queue>footer{flex:none}}
/* Queue height is a real budget: fixed record slots and measured page capacity. */
.office-board{--queue-slot:114px}.office-board .queue-page .queue-job{height:var(--queue-slot);flex:none}.office-board .queue-job small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.office-board .machine-warning{max-height:none;flex:none}.office-board .queue-pinned{flex:none}.office-board .machine-queue>header,.office-board .machine-queue>footer{flex:none}
@media(min-width:1101px){.office-board{overflow:hidden!important}.office-board .office-queues{position:relative;gap:0}.office-board .queue-controls{position:absolute;right:0;top:-37px}.office-board .queue-controls>div:first-child{display:none}.office-board .overview-legend{min-height:34px;padding-right:310px;flex-wrap:wrap}.office-board .overview-legend>span:last-child{display:none}.office-board .queue-remaining{overflow:visible}.office-board .queue-page{min-height:var(--queue-slot)}.office-board .queue-empty{min-height:58px}.office-board .overview-plan{margin-bottom:0}}
@media(min-width:1101px) and (max-height:850px){.office-board{--queue-slot:100px}.office-board .day-toolbar{margin-bottom:8px}.office-board .overview-axis{height:20px}.office-board .queue-pinned{padding:4px 0}.office-board .queue-pinned h3{margin-bottom:2px}.office-board .machine-warning{line-height:1.3}.office-board .queue-job>strong{line-height:1.15}.office-board .queue-empty{min-height:54px}}
@media(max-width:1100px){.office-board{overflow:visible!important}.office-board .queue-page .queue-job{height:auto;min-height:85px}.office-board .machine-warning{max-height:none}}
/* Compact monitor budget preserves type sizes and the full 100px queue slot. */
@media(min-width:1101px) and (max-height:850px){
 .office-board{gap:4px!important}.office-board .wall-header{min-height:0}.office-board .wall-brand .brandmark{width:32px;height:32px}.office-board .wall-date strong{line-height:1}.office-board .wall-date span{line-height:1.1}.office-board .wall-brand p{margin-top:2px}
 .office-board .day-toolbar{margin-bottom:4px}.office-board .overview-lane{height:20px}.office-board .overview-track{height:20px}.office-board .overview-lanes{gap:2px}.office-board .overview-bar{height:17px;top:1px}.office-board .overview-bar>span{line-height:15px}
 .office-board .machine-warning{min-height:14.3px}.office-board .queue-pinned{padding:2px 0}.office-board .queue-pinned h3{margin-bottom:0}.office-board .wall-issue,.office-board .wall-clear{padding-top:4px;padding-bottom:4px}
}
/* Workbook terminology: Status and Remark are the primary job facts. */
.status-help{margin:0 0 18px;padding:10px 14px;background:#f8faf8;border:1px solid var(--line);border-radius:6px;font-size:12px;color:var(--muted)}.status-help summary{cursor:pointer;font-weight:600;color:var(--ink)}.status-help p{margin-top:8px;max-width:100ch}.surface>.status-help{margin:0 18px 14px}.remark-cell{min-width:180px;max-width:300px}.job-remark{white-space:pre-wrap;overflow-wrap:anywhere}.remark-cell .job-remark{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.remark-issue{color:var(--red)}.job-remark-detail{margin:18px 0;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.job-remark-detail h3{font-size:13px;margin-bottom:7px}.job-remark-detail p{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.start-check{font-size:12px;color:var(--muted);margin:9px 0}.shift-remark{margin-top:9px}.queue-reference{font-size:.72em;font-weight:400;color:var(--wall-muted)}.office-board .queue-remark{color:#d8dee8}.queue-remark b{font-weight:600}.office-board .queue-job-top{align-items:start}.office-board .queue-state{flex-shrink:0}.office-board .queue-job-top>span:first-child{min-width:0}
.mobile-job-list{display:none}
/* Attention carries the full planned window and recovery context for each overdue job. */
.office-board .wall-issues{min-height:126px;align-items:stretch}
.office-board .overdue-issue h3{display:flex;justify-content:space-between;gap:12px}
.office-board .overdue-issue h3>span:first-child{overflow:hidden;text-overflow:ellipsis}
.office-board .overdue-issue h3>span:last-child{flex:none;color:#f1c77d}
.office-board .overdue-issue .attention-part{font-size:14px;font-weight:600;color:var(--wall-text)}
.office-board .overdue-issue .attention-window{color:#e1e6ee;display:block;-webkit-line-clamp:unset;white-space:normal}
.office-board .overdue-issue .attention-remark{-webkit-line-clamp:2;white-space:normal;overflow-wrap:anywhere;color:#d8dee8}
.office-board .overdue-issue strong{-webkit-line-clamp:1}
@media(min-width:1101px) and (max-height:850px){
 .office-board .wall-issues{min-height:112px}
 .office-board .wall-header{padding-bottom:0}
 .office-board .wall-brand>div,.office-board .wall-date{display:flex;align-items:center;gap:12px}
 .office-board .wall-brand p{margin-top:0}
 .office-board .machine-queue{padding-top:6px}
 .office-board .queue-pinned{padding:1px 0}
 .office-board .queue-job>strong{margin:2px 0}
 .office-board .machine-warning{margin-top:2px}
}
@media(max-width:1100px){.office-board .wall-issues{min-height:0}.office-board .overdue-issue p,.office-board .overdue-issue strong{display:block;white-space:normal;overflow-wrap:anywhere}.office-board .overdue-issue h3{flex-wrap:wrap;white-space:normal}.office-board .overdue-issue{padding:12px}}
@media(max-width:800px){
 .job-table-desktop{display:none}.mobile-job-list{display:block}.mobile-job-record{padding:18px;border-top:1px solid var(--line)}.mobile-job-record h3{font-size:15px;line-height:1.4}.mobile-job-record h3 button{font-size:15px;line-height:1.4;overflow-wrap:anywhere}.mobile-job-ref,.mobile-job-owner{font-size:11px;color:var(--muted);margin-top:6px;overflow-wrap:anywhere}.mobile-job-record dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.mobile-job-record dt{font-size:11px;color:var(--muted);margin-bottom:5px}.mobile-job-record dd{margin:0;font-size:13px;overflow-wrap:anywhere}.mobile-job-window{grid-column:1/-1}.mobile-job-remark>strong{font-size:12px}.mobile-job-remark p{font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:5px}.mobile-job-record .remark-issue{font-size:12px;margin-top:8px}.mobile-job-owner{margin-top:12px}
}
/* Excel status families, softened for daily use: tinted workspace fills and muted
   office fills. Colour communicates the same meaning without dominating the board. */
:root{--status-wip:#829fbe;--status-queue:#bba86f;--status-offline:#ba8587;--status-completed:#86b49b;--status-confirm:#a496bd}
.swatch.running,.badge.running,.jobbar.running,.week-job.running{--status-fill:#e3edf8;--status-edge:var(--status-wip);--status-ink:#254b75}
.swatch.planned,.badge.planned,.jobbar.planned,.week-job.planned{--status-fill:#faf0d9;--status-edge:var(--status-queue);--status-ink:#71571b}
.swatch.on-hold,.badge.on-hold,.jobbar.on-hold,.week-job.on-hold{--status-fill:#f5e4e1;--status-edge:var(--status-offline);--status-ink:#853f38}
.swatch.completed,.badge.completed,.jobbar.completed,.week-job.completed{--status-fill:#e0eee4;--status-edge:var(--status-completed);--status-ink:#315c42}
.swatch.unconfirmed,.badge.unconfirmed,.jobbar.unconfirmed,.week-job.unconfirmed{--status-fill:#eee9f5;--status-edge:var(--status-confirm);--status-ink:#665080}
.badge:is(.running,.planned,.on-hold,.completed,.unconfirmed),.jobbar:is(.running,.planned,.on-hold,.completed,.unconfirmed),.week-job:is(.running,.planned,.on-hold,.completed,.unconfirmed){background:var(--status-fill);border-color:var(--status-edge);color:var(--status-ink)}
.swatch:is(.running,.planned,.on-hold,.completed,.unconfirmed){background:var(--status-edge)}
.week-job:is(.running,.planned,.on-hold,.completed,.unconfirmed) small{color:inherit}
.jobbar:is(.running,.planned,.on-hold,.completed,.unconfirmed):hover:not(:disabled),.week-job:is(.running,.planned,.on-hold,.completed,.unconfirmed):hover:not(:disabled){background:var(--status-fill);border-color:var(--status-ink)}
.wall-day-board .running{--task-fill:#344b65;--task-edge:var(--status-wip);--task-text:#e1ebf6;--status-label:#b4c8de}
.wall-day-board .planned{--task-fill:#534b34;--task-edge:var(--status-queue);--task-text:#eee0b0;--status-label:#dbca94}
.wall-day-board .held{--task-fill:#573b3d;--task-edge:var(--status-offline);--task-text:#f0c5c5;--status-label:#deb0b1}
.wall-day-board .done{--task-fill:#305044;--task-edge:var(--status-completed);--task-text:#d1e8da;--status-label:#b0d1be}
.wall-day-board .unknown{--task-fill:#443d58;--task-edge:var(--status-confirm);--task-text:#ded3ef;--status-label:#cabdde}
.wall-day-board .queue-state{color:var(--status-label)}
.wall-day-board .queue-state::before{content:"";display:inline-block;width:7px;height:7px;margin-right:4px;background:var(--task-edge);border-radius:1px}
/* The monitor prioritizes day jobs; remarks remain in the working job details. */
.office-board{--queue-slot:68px}
.office-board .machine-queue{padding:10px 12px;gap:0}
.office-board .machine-warning{min-height:0;margin:4px 0;line-height:1.3}
.office-board .queue-pinned{padding:5px 0}
.office-board .queue-pinned h3{font-size:12px;margin-bottom:2px}
.office-board .queue-job{padding:4px 0}
.office-board .queue-job-top{font-size:12px;line-height:1.3;flex-wrap:nowrap;gap:6px}
.office-board .queue-job>strong{font-size:16px;line-height:1.2;margin:2px 0;font-weight:600}
.office-board .queue-state{font-size:12px;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.office-board .queue-reference{font-size:12px;font-weight:400}
.office-board .queue-remaining{padding-top:5px}
.office-board .wall-issues{min-height:100px}
@media(min-width:1101px){
 .office-board{padding:8px 16px!important;gap:6px!important}
 .office-board .wall-header{padding-bottom:0;min-height:0}
 .office-board .wall-brand>div,.office-board .wall-date{display:flex;align-items:center;gap:12px}
 .office-board .wall-brand .brandmark{width:32px;height:32px}
 .office-board .wall-brand h1{font-size:20px}.office-board .wall-brand p{margin:0}
 .office-board .wall-date strong{font-size:28px;line-height:1}
 .office-board .day-toolbar{margin-bottom:14px}
 .office-board .overview-axis{height:22px}
 .office-board .overview-lanes{gap:2px}.office-board .overview-lane{height:24px}.office-board .overview-track{height:24px}
 .office-board .overview-bar{top:2px;height:20px}.office-board .overview-bar>span{line-height:18px}
 .office-board .queue-page .queue-job{height:var(--queue-slot)}
 .office-board .queue-pinned .queue-job{min-height:0}
 .office-board .queue-remaining>header{padding-bottom:3px}
 .office-focused .machine-queue{grid-template:"heading heading" auto "warnings warnings" auto "current next" auto "remaining remaining" minmax(0,1fr) / minmax(0,1fr) minmax(0,1fr);align-content:stretch;gap:6px 24px}
 .office-focused .machine-queue>header{grid-area:heading}.office-focused .machine-warning{grid-area:warnings}
 .office-focused .queue-pinned[data-pinned="current"]{grid-area:current}.office-focused .queue-pinned[data-pinned="next"]{grid-area:next}
 .office-focused .queue-remaining{grid-area:remaining;align-self:stretch}
 .office-focused .queue-page{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 16px}
 .office-focused .queue-page .queue-job{border:0;border-bottom:1px solid #333943}
}
@media(min-width:1101px) and (max-height:850px){
 .office-board{gap:4px!important}.office-board .day-toolbar{margin-bottom:4px}
 .office-board .overview-axis{height:20px}.office-board .overview-lane,.office-board .overview-track{height:20px}
 .office-board .overview-bar{height:17px;top:1px}.office-board .overview-bar>span{line-height:15px}
 .office-board .machine-queue{padding:8px 10px}.office-board .queue-pinned{padding:3px 0}
}
@media(max-width:1100px){
 .office-board .queue-remaining{min-height:0}.office-board .queue-page .queue-job{min-height:72px;height:auto}
 .office-board .queue-job>strong{font-size:17px}.office-board .wall-issues{min-height:0}
}

/* Daily timeline: keep both job references readable within the existing bar height. */
.jobbar{padding-top:4px;padding-bottom:4px}.jobbar.can-drag{padding-left:11px;padding-right:11px}.jobbar strong{line-height:12px}.jobbar small{line-height:10px;margin-top:1px}

/* Distinct, counted attention categories; every record has a reference and action. */
.attention-tabs-panel{min-width:0}.attention-tabs-panel .surface-head{padding:20px 16px 14px}.attention-tabs-panel .surface-head p{line-height:1.6}.attention-tabs{display:flex;margin:0 12px;border-bottom:1px solid var(--line);gap:2px}.attention-tabs button{flex:1;min-width:0;flex-direction:column;gap:4px;border:0;border-bottom:2px solid transparent;border-radius:0;padding:10px 3px;font-size:12px;background:transparent;color:var(--muted)}.attention-tabs button span{font-size:10px;font-variant-numeric:tabular-nums;padding:2px 4px;background:#edf4ef;border-radius:3px;color:var(--ink)}.attention-tabs button[aria-selected=true]{border-bottom-color:var(--green);color:var(--green);font-weight:650}.attention-tabs button:hover{background:var(--soft)}.attention-scope{font-size:11px;color:var(--muted);padding:13px 16px;line-height:1.6}.attention-records{max-height:570px;overflow:auto;overscroll-behavior:contain;scrollbar-color:#a9bfb1 #f4f6f5;scrollbar-width:thin}.attention-record{padding:16px;border-top:1px solid var(--line);overflow-wrap:anywhere}.attention-record-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:11px;margin-bottom:8px}.attention-record-top .badge{font-size:10px}.attention-record h3{font-size:13px;line-height:1.5;margin-bottom:5px}.attention-reference{display:flex;flex-wrap:wrap;gap:2px 10px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.attention-times{margin:10px 0;font-size:11px;font-variant-numeric:tabular-nums}.attention-times div{margin-top:4px}.attention-times dt{color:var(--muted)}.attention-times dd{margin:1px 0 0;line-height:1.5}.attention-late{font-size:12px;font-weight:650;color:var(--red);margin:9px 0 5px}.attention-reason{font-size:12px;font-weight:600;line-height:1.5;margin:6px 0}.attention-source{font-size:10px;color:var(--muted);margin-bottom:5px}.attention-next{font-size:12px;line-height:1.6;margin:8px 0}.attention-owner{font-size:11px;color:var(--muted);line-height:1.6}.attention-record>button{margin-top:10px;min-height:28px}.attention-pagination{border-top:1px solid var(--line);padding:10px 16px;display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.attention-pagination>div{display:flex;gap:6px}.attention-pagination button{min-width:34px;min-height:34px}.attention-tabs-panel #attention-panel:focus-visible{outline-offset:-3px}.attention-tabs-panel .empty{padding:24px 16px}
.attention-times div{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.attention-times dt{font-size:10px;flex-shrink:0}.attention-times dd{margin:0;text-align:right}.attention-pagination>span{max-width:165px;line-height:1.5}
@media(min-width:650px) and (max-width:1200px){.attention-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:620px}.attention-record:nth-child(2n){border-left:1px solid var(--line)}.attention-tabs{max-width:400px}}
@media(max-width:649px){.attention-records{max-height:560px}.attention-tabs-panel .surface-head{padding-top:18px}.attention-tabs button{min-height:44px}.attention-record>button{min-height:40px}.attention-pagination button{min-width:40px;min-height:40px}}

.attention-blocked{color:var(--red);font-weight:650;font-size:10px}.attention-record>button+button{margin-left:8px}

.blocker-context>h3{margin-bottom:6px}.blocker-detail-record{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.blocker-detail-record h4{font-size:15px;margin:4px 0 10px}.blocker-detail-record .job-meta{margin:12px 0}.blocker-detail-record p{font-size:13px;white-space:pre-wrap}.blocker-detail-record .blocker-notes{margin:10px 0}.blocker-detail-record .actions{margin-top:14px}.selected-blocker>.caption{font-weight:650;color:var(--ink)}.blocker-context{margin-bottom:24px}
.compact-workspace .topbar{height:auto;min-height:54px;padding:8px 20px;gap:20px;flex-wrap:wrap}
.overview-title{display:flex;align-items:center;gap:18px;flex:1;min-width:0;flex-wrap:wrap}
.overview-title h1{font-size:21px;line-height:1.3}
.overview-title .actions{margin-left:auto}
.compact-workspace .workspace{padding:12px 20px 32px}
.compact-workspace .demo-banner{margin-bottom:10px;padding:5px 10px;font-size:11px;gap:6px 12px}
.compact-workspace .periodbar{margin-bottom:8px;gap:8px}
.compact-workspace .metrics{margin-bottom:12px;padding:6px 0 10px;gap:0}
.compact-workspace .metric{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;padding:0 16px}
.compact-workspace .metric:first-child{padding-left:0}
.compact-workspace .metric .label{font-size:12px;gap:4px}
.compact-workspace .metric .value{font-size:24px;margin:0;letter-spacing:0}
.compact-workspace .metric .detail{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.compact-workspace .overview-grid{gap:14px}
.compact-workspace .overview-grid>.surface>.surface-head{padding:12px 14px}
.compact-workspace .overview-grid>.surface>.legend{padding:0 14px 10px;gap:12px}
.compact-workspace .attention-tabs-panel .surface-head{padding:12px 14px 8px}
.compact-workspace .attention-tabs button{padding:8px 3px}
@media(max-width:1100px){.compact-workspace .topbar{gap:8px}.compact-workspace .topright{margin-left:auto}.compact-workspace .overview-title{flex-basis:100%}}
@media(max-width:649px){
 .compact-workspace .topbar{display:flex;padding:10px 16px}
 .compact-workspace .workspace{padding:10px 16px 24px}
 .overview-title{gap:8px}.overview-title h1{font-size:20px}
 .compact-workspace .demo-banner{padding:6px 8px;gap:4px 8px}.compact-workspace .demo-banner a{margin-left:0}
 .compact-workspace .metrics{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:8px}
 .compact-workspace .metric{padding:4px 10px;min-height:44px}.compact-workspace .metric:nth-child(2){border-right:0}.compact-workspace .metric:nth-child(3){padding-left:0}
 .compact-workspace .metric .value{font-size:23px}
 .compact-workspace .overview-grid>.surface>.surface-head{flex-wrap:wrap;gap:8px}
 .compact-workspace .overview-grid>.surface>.surface-head button{min-height:40px}
 .compact-workspace .periodbar .segments button{min-height:40px}
}
.account-menu{position:relative;flex-shrink:0}
.account-menu summary{display:flex;align-items:center;gap:8px;min-height:40px;padding:4px 6px;list-style:none;cursor:pointer;border-radius:6px;font-size:12px}
.account-menu summary::-webkit-details-marker{display:none}
.account-menu summary:hover,.account-menu[open] summary{background:var(--soft)}
.account-avatar{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--soft);color:var(--green);font-size:11px;font-weight:650}
.account-trigger-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.account-chevron{color:var(--muted);font-size:11px}
.account-dropdown{position:absolute;right:0;top:calc(100% + 8px);z-index:80;width:248px;max-width:calc(100vw - 32px);padding:14px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #142f2920;overflow-wrap:anywhere}
.account-dropdown>strong{display:block;font-size:14px;line-height:1.4}
.account-role,.account-username{display:block;font-size:12px;color:var(--muted);margin-top:4px;line-height:1.4}
.account-role{text-transform:capitalize}
@media(max-width:800px){.app .topbar{height:auto;min-height:48px;flex-wrap:wrap}.app .topbar>.breadcrumb{display:none}.app .topright{margin-left:auto;max-width:100%;gap:8px}.account-trigger-name{max-width:110px}.account-menu summary{min-height:44px}}

.account-chevron{display:flex}.account-chevron svg{width:12px;height:12px;transform:rotate(90deg)}

.sidebar-display{margin-top:auto;padding-top:24px}
@media(max-width:800px){.sidebar-display{display:none}.sidebar-display.expanded{display:flex;margin-top:0;padding-top:8px}.sidebar-display.expanded button{display:inline-flex;justify-content:flex-start;padding:8px 10px}}
.access-tabs{margin-bottom:16px}
.access-fieldset{border:0;border-top:1px solid var(--line);margin:22px 0 0;padding:16px 0 0;min-width:0}
.access-fieldset[hidden]{display:none}
.access-fieldset legend{font-size:14px;font-weight:650;padding:0 8px 0 0}
.access-fieldset>p{font-size:12px;color:var(--muted);margin-bottom:12px;line-height:1.6}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px}
.permission-list{display:grid;gap:5px}
.permission-choice{display:flex;align-items:flex-start;gap:10px;min-height:36px;padding:7px 0;font-size:13px;line-height:1.5;cursor:pointer}
.permission-choice input{flex:none;margin:3px 0 0;width:16px;height:16px}
.access-preview{margin-top:14px;padding:12px;background:var(--soft);font-size:12px;line-height:1.6;border-radius:6px}
.access-preview p{margin-top:5px}
@media(max-width:649px){.permission-choice{min-height:44px}.permission-grid{gap:4px 12px}}

.job-delete-choice input{flex:0 0 16px;width:16px;height:16px}

.blocker-reason-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.blocker-reason-row h4{margin:0;font-size:17px;line-height:1.4}
.blocker-facts dt{text-transform:none;font-size:12px}
.blocker-facts dd{line-height:1.5}
.blocker-job-context h3{font-size:15px;line-height:1.5;margin:0 0 5px}
.blocker-job-context p{font-size:12px;color:var(--muted);line-height:1.5;margin-bottom:16px}
.blocker-detail-record .blocker-next{margin:12px 0;line-height:1.6}
.blocker-more{margin-top:16px;font-size:12px;line-height:1.6}
.blocker-more summary{cursor:pointer;padding:8px 0;font-weight:600}
.blocker-more p{font-size:12px;color:var(--muted);margin-top:8px}
.blocker-other-list{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:8px 0}
.blocker-context{margin:20px 0}
.blocker-context>h3{font-size:13px;color:var(--muted);margin:0}
.blocker-detail-record .actions:empty{display:none}

dialog.panel-docked[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.panel-docked>.panel-content{overflow-y:auto;min-height:0;scroll-padding-block:16px}
.panel-action-footer{padding:16px 24px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff}
.panel-action-footer .actions,.panel-action-footer .form-actions{margin:0;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.panel-action-footer button{min-height:44px}
@media(max-width:430px){.panel-action-footer{padding-inline:20px}.panel-action-footer button{flex:1}}

.job-row{cursor:pointer}
.job-row:focus-visible{outline:2px solid var(--green);outline-offset:-2px}
.job-row.job-blocked{background:#fff1f0}
.job-row.job-blocked:hover{background:#fce6e4}

.job-actions-cell{min-width:170px;max-width:220px}
.row-job-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.row-job-actions .link{font-size:11px}
.mobile-job-actions{margin-top:14px}
.mobile-job-actions button{min-height:44px}

/* Shared compact workspace: prioritize records over repeated page chrome. */
.compact-workspace .page-description{font-size:12px;color:var(--muted);margin:0 0 10px;line-height:1.5}


.compact-workspace .workspace .surface-head,.compact-workspace .workspace .table-toolbar{padding:12px 14px;flex-wrap:wrap}
.compact-workspace .workspace .section-gap{margin-top:16px}
.compact-workspace .workspace .legend{padding:0 14px 10px}
@media(max-width:649px){
 .compact-workspace .overview-title .actions button,.compact-workspace .workspace .surface-head button,.compact-workspace .workspace .table-toolbar button{min-height:40px}
 
 
}

/* Clearance updates live behind the bell, without displacing workspace content. */
.notifications-trigger{position:relative;flex:none}
.notification-bell{position:relative;width:44px;height:44px;padding:10px;background:transparent;border-color:transparent}
.notification-bell svg{width:21px;height:21px}
.notification-count{position:absolute;top:0;right:0;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--red);color:#fff;font-size:10px;font-weight:650;line-height:18px;text-align:center}
.notification-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.notification-tools{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px}
.notification-item{padding:18px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.notification-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.notification-new{font-size:11px;font-weight:650;color:var(--blue)}
.notification-reason{font-size:13px;font-weight:600;margin-top:6px}
.notification-job{font-size:13px;margin-top:8px}
.notification-reference,.notification-time{font-size:12px;color:var(--muted);margin-top:4px;font-variant-numeric:tabular-nums}
.notification-note{white-space:pre-wrap;font-size:13px;margin-top:10px}
.notification-outcome{font-size:13px;margin-top:10px}
.notification-item>button{margin-top:12px;min-height:40px}
