:root{--bg:#f5f6f4;--surface:#ffffff;--surface-muted:#f0f3f1;--line:#d9dfdc;--text:#17211d;--muted:#607069;--teal:#0f766e;--green:#16804a;--amber:#b7791f;--red:#be3a34;--orange:#c05621;--indigo:#4f46e5;--shadow:0 18px 50px rgba(28,38,34,0.14)}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:14px;letter-spacing:0;line-height:1.35}button,input,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.app-shell,.shop-shell{min-height:100vh;padding:14px}.shop-header,.topbar{align-items:center;display:flex;gap:14px;justify-content:space-between;margin:0 auto 8px;max-width:1800px}.drawer h2,.mobile-sheet h2,.shop-header h1,.topbar h1{margin:0}.shop-header h1,.topbar h1{font-size:21px;line-height:1.15}.eyebrow{color:var(--muted);font-size:11px;font-weight:600;margin:0 0 2px;text-transform:uppercase}.top-actions{display:flex;gap:8px}.nav-pill{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--muted);display:inline-flex;font-weight:600;gap:6px;min-height:34px;padding:0 10px}.nav-pill.is-active{background:#e7f6f2;border-color:#8ed4c4;color:var(--teal)}.user-nav,.user-pill{align-items:center;display:inline-flex;gap:7px}.user-pill{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--text);min-height:34px;padding:4px 8px}.user-pill span{display:grid;line-height:1.1}.user-pill strong{font-size:12px;font-weight:650}.user-pill small{color:var(--muted);font-size:11px}.user-logout{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--muted);cursor:pointer;display:inline-flex;font-weight:650;gap:6px;min-height:34px;padding:0 10px}.user-logout:focus-visible,.user-logout:hover{border-color:#f2b4ad;color:var(--red);outline:0}.user-logout.is-compact{padding:0 8px}.login-shell{align-items:center;display:grid;min-height:100vh;padding:18px}.login-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);display:grid;gap:18px;margin:0 auto;max-width:460px;padding:24px;width:min(100%,460px)}.login-panel h1{font-size:25px;line-height:1.15;margin:0 0 6px}.login-panel p{color:var(--muted);margin:0}.login-form{display:grid;gap:12px}.login-form label{display:grid;gap:5px}.login-form label span{color:var(--muted);font-size:12px;font-weight:650}.login-form input{background:#fff;border:1px solid var(--line);border-radius:8px;min-height:40px;padding:0 11px}.login-demo-note{background:#f7faf9;border:1px dashed var(--line);border-radius:8px;color:var(--muted);display:grid;gap:4px;padding:12px}.login-demo-note strong{color:var(--text);font-weight:650}.forbidden-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-shell .manage-actionbar strong{display:block;font-weight:650;margin-top:2px}.admin-user-row{grid-template-columns:minmax(0,1fr) auto auto}.admin-user-drawer .checkbox-field{align-items:center;display:flex;gap:8px}.admin-user-drawer .checkbox-field input{min-height:auto;width:18px}.user-admin-link{background:#f7faf9}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.collapsible-panel{margin:0 auto 12px;max-width:1800px}.collapsible-trigger{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text);cursor:pointer;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;min-height:58px;padding:10px 12px;text-align:left;width:100%}.collapsible-trigger:focus-visible,.collapsible-trigger:hover{border-color:#8ed4c4;box-shadow:0 0 0 3px rgba(15,118,110,.12);outline:0}.collapsible-title{display:grid;min-width:0}.collapsible-title strong{font-weight:600;font-size:18px;line-height:1.2;overflow-wrap:anywhere}.collapsible-summary{color:var(--muted);font-weight:500;line-height:1.3;overflow-wrap:anywhere}.collapsible-action{align-items:center;background:#f7faf9;border:1px solid var(--line);border-radius:8px;color:var(--teal);display:inline-flex;font-weight:700;gap:6px;justify-content:center;min-height:36px;padding:0 10px;white-space:nowrap}.collapsible-content{display:grid;gap:10px;margin-top:8px}.collapsible-content[hidden]{display:none}.collapsible-content .capacity-summary,.collapsible-content .kpi-strip,.collapsible-content .quick-entry,.collapsible-content .toolbar{margin:0;max-width:none}.kpi-strip{display:grid;gap:10px;grid-template-columns:repeat(6,minmax(150px,1fr));margin:0 auto 12px;max-width:1800px}.kpi-item{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-height:88px;padding:13px 14px}.kpi-label{align-items:center;color:var(--muted);display:flex;font-size:12px;font-weight:700;gap:6px}.kpi-item strong{display:block;font-size:28px;line-height:1.1;margin-top:8px}.kpi-item small{color:var(--muted);display:block;font-size:12px;margin-top:6px}.kpi-item.tone-danger{border-left:5px solid var(--red)}.kpi-item.tone-warning{border-left:5px solid var(--amber)}.command-kpis{gap:6px;margin-bottom:6px}.command-kpis .kpi-item{align-content:center;display:grid;gap:1px;grid-template-columns:minmax(0,1fr) auto;min-height:42px;padding:5px 8px}.command-kpis .kpi-label{font-size:12px}.command-kpis .kpi-item strong{font-size:15px;margin:0;text-align:right}.command-kpis .kpi-item small{grid-column:1/-1;font-size:11px;line-height:1.15;margin:0}.quick-entry,.toolbar{background:var(--surface);border:1px solid var(--line);border-radius:8px;margin:0 auto 12px;max-width:1800px;padding:12px}.section-heading{align-items:center;display:flex;gap:10px;margin-bottom:12px}.section-heading h2{font-size:18px;font-weight:600;line-height:1.2;margin:0}.quick-entry-grid{align-items:end;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.quick-entry-grid .wide-field{grid-column:span 2}.actual-form label,.quick-entry-grid label{display:grid;gap:5px}.actual-form label>span,.quick-entry-grid label>span{color:var(--muted);font-size:12px;font-weight:700}.field-hint{color:var(--muted);display:block;font-size:11px;font-weight:550;line-height:1.25}.actual-form button,.quick-entry-grid button{align-items:center;background:var(--teal);border:1px solid var(--teal);border-radius:8px;color:#ffffff;cursor:pointer;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:36px;padding:0 12px}.actual-form button:disabled,.quick-entry-grid button:disabled{cursor:wait;opacity:.75}.form-message{color:var(--teal);font-weight:800;margin:10px 0 0}.actual-form{align-items:end;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.actual-form button,.actual-note-field{grid-column:span 2}.actual-form.compact{grid-template-columns:1fr}.actual-form.compact .actual-note-field,.actual-form.compact button{grid-column:auto}.status-actions{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.status-actions.compact{grid-template-columns:1fr}.status-actions button{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text);cursor:pointer;display:inline-flex;font-weight:800;gap:6px;justify-content:center;min-height:38px;padding:0 10px}.status-actions button:disabled{cursor:wait;opacity:.7}.filter-grid,.range-controls,.shop-controls{align-items:end;display:flex;flex-wrap:wrap;gap:6px}.range-controls{margin-bottom:12px}.icon-button,.reset-button,.segmented-button,.shop-actions button{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text);cursor:pointer;display:inline-flex;font-weight:600;gap:6px;justify-content:center;min-height:34px;padding:0 10px}.segmented-button.is-selected{background:var(--teal);border-color:var(--teal);color:#ffffff}.icon-button{aspect-ratio:1;padding:0;width:34px}.date-field,.filter-grid label,.shop-controls label{display:grid;gap:5px}.date-field span,.filter-grid label>span:first-child,.shop-controls label>span:first-child{color:var(--muted);font-size:12px;font-weight:700}input,select{background:#ffffff;border:1px solid var(--line);border-radius:8px;color:var(--text);min-height:34px;padding:0 8px}select{min-width:128px}.search-field{min-width:220px}.search-input{align-items:center;background:#ffffff;border:1px solid var(--line);border-radius:8px;display:flex;gap:6px;min-height:34px;padding:0 8px}.search-input input{border:0;min-height:30px;outline:0;padding:0;width:100%}.reset-button{background:#f7faf9}.command-bar{align-items:end;background:var(--surface);border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) minmax(220px,320px) auto;margin:0 auto 6px;max-width:1800px;padding:6px}.command-bar .range-controls{align-items:center;flex-wrap:nowrap;margin:0}.command-bar .date-field{display:flex}.command-bar .date-field span{height:1px;margin:-1px;overflow:hidden;position:absolute;width:1px}.range-segments{align-items:center;display:inline-flex;gap:4px;white-space:nowrap}.segmented-button.quiet{background:#f7faf9}.board-search{min-width:0}.command-actions{align-items:center;display:flex;gap:8px}.toolbar-button,.toolbar-primary{align-items:center;border:1px solid var(--line);border-radius:8px;cursor:pointer;display:inline-flex;font-weight:800;gap:6px;justify-content:center;min-height:34px;padding:0 10px;white-space:nowrap}.toolbar-button{background:#f7faf9;color:var(--text)}.toolbar-button.is-active{border-color:#8ed4c4;color:var(--teal)}.toolbar-primary{background:var(--teal);border-color:var(--teal);color:#ffffff}.filter-chips{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin:0 auto 6px;max-width:1800px}.filter-chips button{align-items:center;background:#edf7f5;border:1px solid #bfe5dc;border-radius:8px;color:var(--teal);cursor:pointer;display:inline-flex;font-size:11px;font-weight:800;gap:5px;min-height:26px;padding:0 7px}.filter-chips .clear-all-chip{background:#f7faf9;border-color:var(--line);color:var(--muted)}.filter-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 32px rgba(28,38,34,.1);display:grid;gap:10px;margin:0 auto 6px;max-width:1800px;padding:10px}.filter-panel-actions,.filter-panel-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.filter-panel-header strong{display:block;font-size:16px}.filter-panel .filter-grid{align-items:end;display:grid;grid-template-columns:repeat(6,minmax(130px,1fr))}.filter-panel-actions{justify-content:flex-end}.drag-message{background:#fff7e6;border:1px solid #f2c879;border-radius:8px;color:#7c4a03;font-weight:800;margin:0 auto 12px;max-width:1800px;min-height:42px;padding:11px 12px}.drag-message.is-saving{background:#e7f6f2;border-color:#8ed4c4;color:var(--teal)}.part-review-panel{background:#fffdf7;border:1px solid #ead7a8;border-left:4px solid #d99a17;border-radius:8px;display:grid;gap:8px;margin:0 auto 12px;max-width:1800px;padding:9px 10px}.part-review-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.part-review-header strong{font-size:14px;font-weight:650}.part-review-list{display:grid;gap:6px}.part-review-item{align-items:center;background:#ffffff;border:1px solid #eadfbe;border-radius:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;min-height:48px;padding:7px 8px}.part-review-item.tone-danger{border-color:#f2c8bf}.part-review-item>div{align-items:center;display:grid;gap:3px 8px;grid-template-columns:auto minmax(120px,.65fr) minmax(160px,1fr);min-width:0}.part-review-item p,.part-review-item small,.part-review-item span,.part-review-item strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.part-review-item strong{font-size:13px;font-weight:600}.part-review-item p,.part-review-item small,.part-review-item span{color:var(--muted);font-size:11px}.part-review-item p{grid-column:2/-1;margin:0}.part-review-item small{grid-column:2/-1}.part-review-badge{background:#fff4d8;border:1px solid #e9c36e;border-radius:7px;color:#7c4a03;display:inline-flex;font-weight:650;justify-content:center;padding:3px 6px}.part-review-more{color:var(--muted);font-size:12px;font-weight:550;padding:2px 4px}.board-wrap{border:1px solid var(--line);border-radius:8px;margin:0 auto;max-width:1800px;overflow:auto;position:relative}.modal-backdrop{align-items:center;background:rgba(23,33,29,.32);display:flex;inset:0;justify-content:center;padding:18px;position:fixed;z-index:35}.related-move-prompt{align-items:stretch;background:#fbfefd;border:1px solid #b7ddd5;border-radius:8px;box-shadow:0 26px 70px rgba(23,33,29,.28);display:grid;gap:16px;max-width:560px;padding:18px;width:min(560px,100%)}.related-move-prompt h2{font-size:20px;font-weight:750;margin:0 0 8px}.related-move-prompt p{line-height:1.45;margin:0}.related-move-prompt p strong{font-weight:750}.related-move-prompt span{color:var(--muted);display:block;font-size:13px;line-height:1.4;margin-top:8px}.related-move-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.related-move-actions button{min-height:40px}.planning-grid{--task-lane-height:54px;display:grid;min-width:100%}.grid-cell{background:var(--surface);border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:72px;min-width:0;padding:7px}.date-header,.sticky-corner{min-height:46px;position:sticky;top:0;z-index:5}.operation-cell,.sticky-corner{left:0;position:sticky;z-index:6}.sticky-corner{align-items:center;display:flex;font-weight:800}.date-header{display:grid;gap:2px}.date-header span{color:var(--muted);font-size:11px}.date-header.is-today,.plan-cell.is-today{background:#ecf9f4}.operation-cell{background:#f9fbfa;display:grid;gap:5px}.operation-cell strong{font-size:14px;text-transform:uppercase}.operation-cell span{color:var(--muted);font-weight:700}.plan-cell{min-height:136px}.plan-cell.is-expanded{background:#fbfefd;box-shadow:inset 0 0 0 1px rgba(15,118,110,.14)}.drop-target{outline:0 solid transparent;transition:background-color .12s ease,outline-color .12s ease,outline-width .12s ease}.drop-target.is-over{background:#dff5ee;outline:3px solid #73c8b6;outline-offset:-3px}.task-stack{display:grid;gap:6px}.task-lane-spacer,.task-stack.has-task-lanes .task-visual-slot.is-lane-slot{height:var(--task-lane-height);min-height:var(--task-lane-height)}.task-lane-spacer{pointer-events:none}.task-visual-slot{display:grid;gap:2px;min-width:0}.task-visual-slot.is-lane-slot{grid-template-rows:minmax(0,1fr) 10px}.task-visual-slot.is-lane-slot .task-card.is-board-card{min-height:0}.task-card-placeholder{min-height:0;pointer-events:none}.task-card{background:#ffffff;border:1px solid var(--line);border-left:5px solid var(--muted);border-radius:8px;color:var(--text);cursor:pointer;display:grid;gap:3px;min-width:0;padding:6px;position:relative;text-align:left;width:100%}.task-card.is-board-card{align-content:center;background:var(--task-card-bg,#ffffff);border-color:var(--task-card-ring,var(--line));border-left-color:var(--task-card-accent,var(--muted));gap:2px;min-height:42px;touch-action:none}.task-card.is-multi-day{border-left-width:4px}.task-card.is-multi-day:after,.task-card.is-multi-day:before{border-top:2px solid var(--task-card-accent,var(--teal));content:"";opacity:.38;pointer-events:none;position:absolute;top:50%;width:5px}.task-card.is-multi-day:before{left:-6px}.task-card.is-multi-day:after{right:-6px}.task-card.is-span-start{border-bottom-right-radius:3px;border-top-right-radius:3px}.task-card.is-span-end:after,.task-card.is-span-start:before{display:none}.task-card.is-span-middle{border-radius:3px}.task-card.is-span-end{border-bottom-left-radius:3px;border-top-left-radius:3px}.task-card-badges,.task-card-bottom,.task-card-top,.task-card>span{min-width:0}.task-card:focus-visible,.task-card:hover{box-shadow:0 0 0 3px rgba(15,118,110,.16);outline:0}.task-card.is-board-card:focus-visible,.task-card.is-board-card:hover{box-shadow:0 0 0 3px var(--task-card-ring,rgba(15,118,110,.16))}.task-card.is-dragging{opacity:.36}.task-hover-card{background:#ffffff;border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 36px rgba(23,33,29,.2);color:var(--text);display:grid;gap:6px;left:100%;margin-left:8px;opacity:0;padding:10px;pointer-events:none;position:absolute;top:-1px;transform:translateX(-4px);transition:opacity .12s ease,transform .12s ease,visibility .12s ease;visibility:hidden;width:min(300px,calc(100vw - 32px));z-index:30}.task-card:focus .task-hover-card,.task-card:focus-visible .task-hover-card,.task-card:hover .task-hover-card{opacity:1;transform:translateX(0);visibility:visible}.task-hover-card>span{align-items:center;display:flex;gap:10px;justify-content:space-between;min-width:0}.task-hover-card b{color:var(--muted);font-size:10px;font-weight:650;white-space:nowrap}.task-hover-card strong{font-size:11px;font-weight:550;line-height:1.25;overflow-wrap:anywhere;text-align:right}.task-hover-card .task-hover-title{align-items:flex-start;border-bottom:1px solid var(--line);display:block;font-size:13px;font-weight:800;line-height:1.25;padding-bottom:7px}.task-hover-card .task-hover-note{background:#fff7e6;border-radius:8px;color:#7c4a03;display:block;font-size:11px;font-weight:800;line-height:1.3;padding:6px 7px}.drag-overlay{box-shadow:0 18px 38px rgba(23,33,29,.26);cursor:grabbing;min-width:230px;pointer-events:none}.shop-task-head,.shop-task-meta,.task-card-bottom,.task-card-top{align-items:center;display:flex;gap:6px;justify-content:space-between}.task-title{display:-webkit-box;font-size:12px;font-weight:550;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.2;overflow:hidden}.planning-card-label{color:var(--text);-webkit-line-clamp:1}.planning-span-label{color:var(--task-card-accent,var(--teal));font-size:9px;font-weight:750;line-height:1;text-transform:uppercase}.planning-part-label,.planning-span-label{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-part-label{color:var(--muted);font-size:10px;font-weight:500;line-height:1.15}.actual-timeline-bar,.actual-timeline-placeholder{height:10px;min-width:0}.actual-timeline-placeholder{pointer-events:none}.actual-timeline-bar{--actual-line-color:#12825d;background:transparent;border:0;cursor:pointer;display:block;padding:0;position:relative;width:100%}.actual-timeline-bar.tone-early{--actual-line-color:#2563eb}.actual-timeline-bar.tone-late{--actual-line-color:#c2410c}.actual-timeline-bar:before{border-top:2px solid var(--actual-line-color);content:"";left:-6px;opacity:.95;position:absolute;right:-6px;top:50%;transform:translateY(-50%)}.actual-timeline-bar.is-start:before{left:8px}.actual-timeline-bar.is-end:before,.actual-timeline-bar.is-single:before{right:12px}.actual-timeline-bar.is-single:before{left:8px}.actual-timeline-bar:after{border-bottom:4px solid transparent;border-left:8px solid var(--actual-line-color);border-top:4px solid transparent;content:"";display:none;position:absolute;right:5px;top:50%;transform:translateY(-50%)}.actual-timeline-bar.is-end:after,.actual-timeline-bar.is-single:after{display:block}.actual-timeline-bar:focus-visible{border-radius:999px;box-shadow:0 0 0 3px rgba(18,130,93,.18);outline:0}.assembly-ready-chip{align-items:center;border:1px solid rgba(96,112,105,.24);border-radius:999px;color:var(--muted);display:inline-flex;font-size:9px;font-weight:750;justify-self:start;line-height:1;max-width:100%;min-height:14px;overflow:hidden;padding:2px 5px;text-overflow:ellipsis;white-space:nowrap}.assembly-ready-chip.is-ready{background:#e8f7ee;border-color:#9fd6b5;color:#166534}.assembly-ready-chip.is-pending{background:#fff8e7;border-color:#e3c77a;color:#7c4a03}.assembly-ready-chip.is-blocked{background:#fff1f1;border-color:#e8aaa6;color:#9f2e2a}.planning-grid.has-assembly-focus .task-card.is-board-card:not(.is-assembly-related){opacity:.42}.planning-grid.has-assembly-focus .task-card.is-board-card.is-assembly-related{box-shadow:0 0 0 2px rgba(37,99,235,.22)}.planning-grid.has-assembly-focus .task-card.is-board-card.is-assembly-anchor{box-shadow:0 0 0 2px rgba(15,118,110,.32),0 12px 24px rgba(23,33,29,.14)}.capacity-indicator span,.task-card-bottom>span:first-child,.task-card-top strong,.task-meta{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-card-bottom,.task-meta{color:var(--muted);font-size:11px}.task-card-badges{align-items:center;display:inline-flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}.task-card .status-pill{max-width:100%}.task-card .status-pill,.task-overflow-chip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-overflow-chip{background:#f4f6f7;border:1px dashed var(--line);border-radius:7px;color:var(--muted);cursor:pointer;font-size:11px;font-weight:700;min-height:22px;padding:3px 6px;text-align:left;width:100%}.task-overflow-chip:focus-visible,.task-overflow-chip:hover{background:#edf7f5;color:var(--teal);outline:2px solid rgba(15,118,110,.18);outline-offset:1px}.task-overflow-chip.is-expanded{background:#e7f6f2;border-style:solid;color:var(--teal);text-align:center}.planning-grid.is-balanced .grid-cell{--task-lane-height:50px;padding:6px}.planning-grid.is-balanced .task-card{padding:5px}.planning-grid.is-balanced .task-title{-webkit-line-clamp:1}.planning-grid.is-balanced .task-card-bottom{align-items:flex-start;display:grid;gap:4px}.planning-grid.is-balanced .task-card-badges{justify-content:flex-start}.planning-grid.is-compact .grid-cell{--task-lane-height:46px;padding:5px}.planning-grid.is-compact .date-header,.planning-grid.is-compact .sticky-corner{min-height:40px}.planning-grid.is-compact .date-header{align-content:center}.planning-grid.is-compact .date-header strong{font-size:12px;line-height:1.1}.planning-grid.is-compact .date-header span{display:none}.planning-grid.is-compact .operation-cell strong{font-size:11px;line-height:1.15}.planning-grid.is-compact .operation-cell span{font-size:11px}.planning-grid.is-compact .plan-cell{min-height:112px}.planning-grid.is-compact .capacity-indicator{justify-content:center;margin-bottom:4px;min-height:20px;padding:2px 4px}.planning-grid.is-compact .capacity-indicator span+span{display:none}.planning-grid.is-compact .task-stack{gap:4px}.planning-grid.is-compact .task-visual-slot.is-lane-slot{grid-template-rows:minmax(0,1fr) 8px}.planning-grid.is-compact .task-card{border-left-width:4px;gap:2px;padding:4px}.planning-grid.is-compact .task-card-bottom,.planning-grid.is-compact .task-card-top{gap:4px}.planning-grid.is-compact .task-card-top strong{font-size:12px}.planning-grid.is-compact .task-card-top span{font-size:11px;font-weight:800}.planning-grid.is-compact .task-title{font-size:11px;-webkit-line-clamp:1}.planning-grid.is-compact .planning-part-label{font-size:9px}.planning-grid.is-compact .actual-timeline-bar,.planning-grid.is-compact .actual-timeline-placeholder{height:8px}.planning-grid.is-compact .assembly-ready-chip{font-size:8px;min-height:12px;padding:1px 4px}.planning-grid.is-compact .task-meta{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-grid.is-compact .task-card-bottom{justify-content:flex-end}.planning-grid.is-compact .task-card-bottom>span:first-child{display:none}.planning-grid.is-compact .task-card-badges{gap:3px;justify-content:flex-end;min-width:0}.planning-grid.is-compact .task-mini-flag{font-size:9px;padding:2px 4px}.planning-grid.is-compact .status-pill{font-size:10px;padding:2px 4px;white-space:nowrap}.planning-grid.is-ultra-compact .grid-cell{--task-lane-height:42px;padding:3px}.planning-grid.is-ultra-compact .date-header,.planning-grid.is-ultra-compact .sticky-corner{min-height:34px}.planning-grid.is-ultra-compact .date-header{align-content:center}.planning-grid.is-ultra-compact .date-header strong{font-size:10px;line-height:1.1}.planning-grid.is-ultra-compact .capacity-indicator span+span,.planning-grid.is-ultra-compact .date-header span,.planning-grid.is-ultra-compact .operation-cell span,.planning-grid.is-ultra-compact .task-card-bottom>span:first-child,.planning-grid.is-ultra-compact .task-meta,.planning-grid.is-ultra-compact .task-mini-flag{display:none}.planning-grid.is-ultra-compact .operation-cell{align-content:start}.planning-grid.is-ultra-compact .operation-cell strong{font-size:10px;line-height:1.1}.planning-grid.is-ultra-compact .plan-cell{min-height:116px}.planning-grid.is-ultra-compact .capacity-indicator{justify-content:center;margin-bottom:3px;min-height:18px;padding:1px 3px}.planning-grid.is-ultra-compact .task-stack{gap:3px}.planning-grid.is-ultra-compact .task-visual-slot{gap:1px}.planning-grid.is-ultra-compact .task-visual-slot.is-lane-slot{grid-template-rows:minmax(0,1fr) 7px}.planning-grid.is-ultra-compact .task-card{border-left-width:3px;gap:1px;min-height:38px;padding:3px 4px}.planning-grid.is-ultra-compact .task-card-bottom,.planning-grid.is-ultra-compact .task-card-top{gap:3px}.planning-grid.is-ultra-compact .task-card-top strong{font-size:10px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-grid.is-ultra-compact .task-card-top>span{display:none}.planning-grid.is-ultra-compact .task-title{font-size:10px;line-height:1.12;-webkit-line-clamp:1}.planning-grid.is-ultra-compact .planning-part-label{font-size:9px;line-height:1.1}.planning-grid.is-ultra-compact .actual-timeline-bar,.planning-grid.is-ultra-compact .actual-timeline-placeholder{height:7px}.planning-grid.is-ultra-compact .actual-timeline-bar:before{border-top-width:1.5px}.planning-grid.is-ultra-compact .actual-timeline-bar:after{border-bottom-width:3px;border-left-width:7px;border-top-width:3px;right:4px}.planning-grid.is-ultra-compact .assembly-ready-chip{font-size:8px;min-height:11px;padding:1px 3px}.planning-grid.is-ultra-compact .planning-span-label{display:none}.planning-grid.is-ultra-compact .task-card-bottom{justify-content:flex-end;min-height:13px}.planning-grid.is-ultra-compact .task-card-badges{gap:2px;justify-content:flex-end;min-width:0;overflow:hidden}.planning-grid.is-ultra-compact .status-pill{font-size:9px;padding:1px 3px;white-space:nowrap}.planning-grid.is-ultra-compact .task-overflow-chip{font-size:10px;min-height:18px;padding:2px 4px}.task-mini-flag{background:#edf7f5;border-radius:8px;color:var(--teal);display:inline-flex;font-size:10px;font-weight:800;line-height:1.2;padding:3px 5px;white-space:nowrap}.task-mini-flag.is-danger{background:#fff1f0;color:#991b1b}.priority-pill,.status-pill{border-radius:8px;display:inline-flex;font-size:11px;font-weight:800;padding:2px 6px}.status-pill.large{font-size:14px;padding:7px 9px}.task-card:not(.is-board-card).status-not_started{border-left-color:#718096}.task-card:not(.is-board-card).status-in_progress{border-left-color:var(--indigo)}.task-card:not(.is-board-card).status-completed{border-left-color:var(--green)}.task-card:not(.is-board-card).status-at_risk{border-left-color:var(--amber)}.task-card:not(.is-board-card).status-blocked,.task-card:not(.is-board-card).status-overdue{border-left-color:var(--red)}.status-pill.status-at_risk,.status-pill.status-blocked,.status-pill.status-completed,.status-pill.status-in_progress,.status-pill.status-not_started,.status-pill.status-overdue{border-left:0}.status-pill.status-not_started{background:#edf2f7;color:#2d3748}.status-pill.status-in_progress{background:#eef2ff;color:#3730a3}.status-pill.status-completed{background:#e8f7ed;color:#166534}.status-pill.status-at_risk{background:#fff7e6;color:#92400e}.status-pill.status-blocked,.status-pill.status-overdue{background:#fff1f0;color:#991b1b}.priority-pill{background:#edf7f5;color:var(--teal)}.capacity-indicator{align-items:center;border-radius:8px;display:flex;font-size:11px;font-weight:800;gap:6px;justify-content:space-between;margin-bottom:6px;min-height:24px;padding:3px 6px}.capacity-normal{background:#e8f7ed;color:#166534}.capacity-warning{background:#fff7e6;color:#92400e}.capacity-overloaded{background:#fff1f0;color:#991b1b}.capacity-summary{align-items:center;background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:8px;display:flex;gap:12px;justify-content:space-between;margin:0 auto 12px;max-width:1800px;min-height:54px;padding:10px 12px}.capacity-summary strong{display:block;font-size:17px}.capacity-summary>span{color:var(--muted);font-weight:800}.manage-shell{margin:0 auto;max-width:1860px}.manage-tabs{display:flex;flex-wrap:wrap;gap:8px}.manage-panel,.manage-tabs{margin:0 auto 12px;max-width:1800px}.manage-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden;padding:12px}.manage-actionbar{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:12px;justify-content:space-between;padding-bottom:12px}.entity-list{display:grid}.product-accordion-item{border-bottom:1px solid var(--line)}.product-accordion-item:last-child,.product-accordion-item>.entity-row{border-bottom:0}.entity-row{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto auto;min-height:64px;padding:10px 0}.entity-row:last-child{border-bottom:0}.entity-main{display:grid;gap:5px;min-width:0}.entity-main strong{font-size:14px;font-weight:550;line-height:1.25;overflow-wrap:anywhere}.entity-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:12px;font-weight:450;gap:5px}.entity-meta span{background:#f7faf9;border:1px solid var(--line);border-radius:8px;padding:4px 6px}.entity-status{background:#edf7f5;border-radius:8px;color:var(--teal);font-size:11px;font-weight:550;padding:6px 8px;white-space:nowrap}.entity-status.tone-warning{background:#fff7e6;color:#92400e}.entity-status.tone-danger{background:#fff1f0;color:#991b1b}.entity-actions{align-items:center;display:flex;gap:7px}.product-parts-panel{background:#fbfdfc;border:1px solid #d8e6e2;border-left:3px solid #8ed4c4;border-radius:8px;display:grid;gap:6px;margin:0 0 12px 34px;padding:8px 8px 9px 10px}.product-parts-header{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:0}.product-parts-header strong{font-size:12px;font-weight:550}.product-parts-list{display:grid}.product-part-row{align-items:center;border-top:1px solid var(--line);color:var(--muted);display:grid;font-size:11px;font-weight:450;gap:6px;grid-template-columns:minmax(160px,1fr) minmax(82px,.55fr) minmax(48px,auto) minmax(62px,auto) minmax(50px,auto) auto;min-height:36px;padding:4px 0}.product-part-row.is-child{border-left:2px solid #b9ddd3;margin-left:var(--part-indent,18px);padding-left:10px}.product-part-row .entity-actions{gap:4px;justify-content:flex-end;white-space:nowrap}.product-part-main{color:var(--text);display:grid;gap:2px;min-width:0}.product-part-subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-part-main-title{align-items:center;display:flex;gap:4px;min-width:0}.product-part-main strong{font-size:12px;font-weight:550;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-part-subtitle{font-size:11px;font-weight:400}.part-tree-toggle,.part-tree-toggle-placeholder{flex:0 0 20px;height:20px;width:20px}.part-tree-toggle{align-items:center;background:#edf7f5;border:1px solid #cfe3de;border-radius:6px;color:var(--teal);cursor:pointer;display:inline-flex;justify-content:center;padding:0}.part-tree-toggle:focus-visible,.part-tree-toggle:hover{background:#e2f3ee;outline:2px solid rgba(15,118,110,.16);outline-offset:1px}.product-parts-empty{border-top:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:500;padding:12px 0 2px}.manage-drawer{width:min(560px,100vw)}.drawer-form-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-form-grid .wide-field{grid-column:1/-1}.checkbox-field,.data-row label,.drawer-form-grid label,.manage-filterbar label,.manage-form-grid label{display:grid;gap:5px}.checkbox-field>span,.data-row label>span,.drawer-form-grid label>span,.manage-filterbar label>span,.manage-form-grid label>span{color:var(--muted);font-size:12px;font-weight:600}.drawer-form-grid .save-button{grid-column:1/-1}.drawer-form-grid input[type=file]{padding:6px 8px}.attachment-links{display:flex;flex-wrap:wrap;gap:6px}.attachment-links a{align-items:center;background:#f7faf9;border:1px solid var(--line);border-radius:8px;color:var(--text);display:inline-flex;font-size:12px;font-weight:600;gap:5px;max-width:100%;min-height:30px;padding:5px 8px;text-decoration:none}.attachment-links a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.data-row,.manage-filterbar,.manage-form-grid{align-items:end;display:grid;gap:9px}.manage-form-grid{border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(138px,1fr));padding-bottom:12px}.data-row .wide-field,.manage-form-grid .wide-field{grid-column:span 2}.manage-filterbar{background:#f7faf9;border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:12px 0;padding:10px}.data-table{display:grid;overflow-x:auto}.data-row{border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(126px,1fr));min-width:980px;padding:10px 0}.tasks-table .data-row{grid-template-columns:96px repeat(17,minmax(118px,1fr)) 160px 96px;min-width:2380px}.operations-table .data-row,.projects-table .data-row,.work-centers-table .data-row{min-width:900px}.products-table .data-row{min-width:1500px}.checkbox-field input{accent-color:var(--teal);height:20px;min-height:20px;width:20px}.icon-text-button,.save-button{align-items:center;background:var(--teal);border:1px solid var(--teal);border-radius:8px;color:#ffffff;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;justify-content:center;min-height:40px;padding:0 12px}.icon-text-button{background:#edf7f5;color:var(--teal)}.icon-text-button.is-compact{border-radius:6px;font-size:11px;font-weight:600;gap:4px;min-height:26px;padding:0 7px}.icon-text-button.is-compact.danger{background:#fff1f0;border-color:#f2cbc7;color:#9f2e2a}.icon-button.danger:disabled,.icon-text-button:disabled,.save-button:disabled{cursor:wait;opacity:.7}.icon-button.danger{border-color:#f1aaa6;color:var(--red)}.row-actions{align-items:end;display:flex;gap:7px}.task-code-cell{align-self:stretch;background:#f7faf9;border:1px solid var(--line);border-radius:8px;display:grid;gap:4px;padding:7px}.task-code-cell span{color:var(--muted);font-size:12px;font-weight:600}.task-code-cell strong{font-size:16px}.row-lifecycle{align-self:stretch}.alerts-strip{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;margin:8px auto 0;max-width:1800px;min-height:36px;padding:7px 10px}.alert-chip{background:#fff7e6;border-radius:8px;color:#92400e;font-size:12px;font-weight:700;padding:4px 7px}.alert-chip.is-danger{background:#fff1f0;color:#991b1b}.drawer{background:var(--surface);border-left:1px solid var(--line);box-shadow:var(--shadow);display:grid;align-content:start;gap:10px;height:100vh;overflow:auto;padding:14px;position:fixed;right:0;top:0;width:min(520px,100vw);z-index:20}.drawer-header,.mobile-sheet-header{align-items:start;display:flex;gap:10px;justify-content:space-between}.drawer-status{display:flex;gap:6px}.drawer-task-actions{display:flex;justify-content:flex-end}.danger-action-button{align-items:center;background:#fff1f0;border:1px solid #f1aaa6;border-radius:8px;color:var(--red);cursor:pointer;display:inline-flex;font-weight:750;gap:6px;justify-content:center;min-height:34px;padding:0 10px}.danger-action-button:focus-visible,.danger-action-button:hover{background:#ffe7e5;outline:2px solid rgba(190,58,52,.16);outline-offset:1px}.danger-action-button:disabled{cursor:wait;opacity:.7}.drawer-error-message{background:#fff1f0;border:1px solid #f1aaa6;border-radius:8px;color:var(--red);font-size:12px;font-weight:700;margin:0;padding:8px}.drawer-tabs{background:#f4f6f7;border:1px solid var(--line);border-radius:8px;display:grid;gap:3px;grid-template-columns:repeat(5,minmax(0,1fr));padding:3px}.drawer-tabs button{background:transparent;border:0;border-radius:6px;color:var(--muted);cursor:pointer;font-size:12px;font-weight:800;min-height:30px;padding:0 6px}.drawer-tabs button.is-selected{background:var(--surface);box-shadow:0 1px 3px rgba(28,38,34,.12);color:var(--teal)}.create-task-drawer .quick-entry{border:0;margin:0;padding:0}.create-task-drawer .section-heading{display:none}.create-task-drawer .quick-entry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-section{border-top:1px solid var(--line);padding-top:9px}.drawer-section h3{font-size:14px;font-weight:600;margin:0 0 6px}.assembly-readiness-panel{display:grid;gap:8px}.planning-attachment-group{border-top:1px solid var(--line);display:grid;gap:6px;margin-top:6px;padding-top:8px}.planning-attachment-group>strong{font-size:12px;font-weight:700}.planning-attachment-group>span{color:var(--muted);font-size:12px}.assembly-readiness-summary{background:#f7faf9;border:1px solid var(--line);border-radius:8px;display:grid;gap:2px;padding:8px}.assembly-readiness-summary strong{font-size:13px;font-weight:750}.assembly-readiness-summary span{color:var(--muted);font-size:12px}.assembly-readiness-summary.is-ready{background:#edf8f0;border-color:#a7d9b8}.assembly-readiness-summary.is-pending{background:#fff9e8;border-color:#e3cf91}.assembly-readiness-summary.is-blocked{background:#fff2f1;border-color:#e8aaa6}.assembly-readiness-list{display:grid;gap:6px}.assembly-readiness-row{align-items:center;background:#ffffff;border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;padding:7px 8px}.assembly-readiness-row>div{display:grid;gap:1px;min-width:0}.assembly-readiness-row strong{font-size:13px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assembly-readiness-row span{color:var(--muted);font-size:12px}.assembly-readiness-row>span{border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:11px;font-weight:750;padding:3px 6px;white-space:nowrap}.assembly-readiness-row.is-ready>span{background:#e8f7ee;border-color:#9fd6b5;color:#166534}.assembly-readiness-row.is-in_progress>span{background:#eef5ff;border-color:#b7cffb;color:#1d4ed8}.assembly-readiness-row.is-blocked>span{background:#fff1f1;border-color:#e8aaa6;color:#9f2e2a}.assembly-readiness-row.is-not_ready>span,.assembly-readiness-row.is-unplanned>span{background:#f7faf9}.planning-edit-form{display:grid;gap:9px;grid-template-columns:repeat(2,minmax(0,1fr))}.planning-edit-form label{display:grid;gap:4px;min-width:0}.planning-edit-form label>span{color:var(--muted);font-size:11px;font-weight:550}.planning-edit-form input,.planning-edit-form select,.planning-edit-form textarea{background:#fbfdfc;border:1px solid var(--line);border-radius:7px;color:var(--text);font:inherit;min-height:36px;padding:7px 8px;width:100%}.planning-edit-form textarea{resize:vertical}.planning-edit-confirm,.planning-edit-context,.planning-edit-form .wide-field{grid-column:1/-1}.planning-edit-context{background:#f7faf9;border:1px solid var(--line);border-radius:8px;display:grid;gap:6px;padding:8px}.planning-edit-confirm span,.planning-edit-context span{color:var(--muted);display:grid;gap:2px;font-size:12px;line-height:1.35}.planning-edit-context b{font-size:10px;font-weight:600;text-transform:uppercase}.planning-edit-context strong{color:var(--text);font-size:12px;font-weight:550;overflow-wrap:anywhere}.planning-edit-confirm{background:#fff7e6;border:1px solid #f2c879;border-radius:8px;display:grid;gap:8px;padding:9px}.planning-edit-confirm strong{display:block;font-size:13px;margin-bottom:3px}.planning-edit-confirm>div:last-child{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.detail-row{align-items:start;display:grid;gap:10px;grid-template-columns:110px 1fr;padding:5px 0}.detail-row span{color:var(--muted)}.detail-row strong{font-size:13px;font-weight:550}.drawer-note{line-height:1.5;margin:0}.plan-actual-grid{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.plan-actual-grid.compact{grid-template-columns:1fr}.plan-actual-item{background:#f7faf9;border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:8px;display:grid;gap:3px;padding:7px}.plan-actual-item small,.plan-actual-item span{color:var(--muted);font-weight:700}.plan-actual-item strong{font-size:15px}.plan-actual-item.tone-under{border-left-color:var(--amber)}.plan-actual-item.tone-over{border-left-color:var(--red)}.production-log-list{display:grid;gap:6px;list-style:none;margin:0;padding:0}.production-log-list li{background:#f7faf9;border:1px solid var(--line);border-radius:8px;display:grid;gap:4px;padding:8px}.production-log-list.compact li{padding:9px}.production-log-list small,.production-log-list time{color:var(--muted);font-size:11px;font-weight:700}.production-log-list p{font-weight:700;line-height:1.35;margin:0}.log-type{align-items:center;background:#edf7f5;border-radius:8px;color:var(--teal);display:inline-flex;font-size:11px;font-weight:800;justify-self:start;padding:3px 6px}.log-type-pause,.log-type-quantity_update{background:#fff7e6;color:#92400e}.log-type-complete{background:#e8f7ed;color:#166534}.journal-empty{color:var(--muted);font-weight:700;margin:0}.production-log-shell{max-width:1860px}.production-log-panel,.production-log-toolbar{background:var(--surface);border:1px solid var(--line);border-radius:8px;margin:0 auto 12px;max-width:1800px;padding:12px}.production-log-toolbar{display:grid;gap:10px}.journal-date-range,.journal-filter-grid{align-items:end;display:grid;gap:8px}.journal-date-range{grid-template-columns:repeat(2,minmax(150px,190px)) auto;justify-content:start}.journal-filter-grid{grid-template-columns:repeat(6,minmax(130px,1fr)) auto}.journal-date-range label,.journal-filter-grid label{display:grid;gap:4px;min-width:0}.journal-date-range label>span,.journal-filter-grid label>span{color:var(--muted);font-size:11px;font-weight:600}.journal-date-range input,.journal-filter-grid input,.journal-filter-grid select{background:#fbfdfc;border:1px solid var(--line);border-radius:7px;color:var(--text);font:inherit;min-height:36px;padding:7px 8px}.production-log-panel{display:grid;gap:8px}.production-log-panel-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.production-log-panel-header strong{font-size:15px;font-weight:650}.production-log-panel-header>span{color:var(--muted);font-size:12px;font-weight:600}.production-log-table{display:grid}.production-log-row{align-items:center;border-top:1px solid var(--line);display:grid;gap:10px;grid-template-columns:94px 112px minmax(0,1fr) minmax(94px,.32fr) auto;min-height:58px;padding:8px 0}.production-log-row:first-child{border-top:0}.production-log-row time{color:var(--muted);font-size:12px;font-weight:600}.production-log-main{display:grid;gap:3px;min-width:0}.production-log-main p,.production-log-main span,.production-log-main strong,.production-log-metrics{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.production-log-main strong{font-size:13px;font-weight:600}.production-log-main p,.production-log-main span,.production-log-metrics{color:var(--muted);font-size:12px}.production-log-main p{margin:0}.production-log-metrics{background:#f7faf9;border:1px solid var(--line);border-radius:7px;justify-self:start;padding:4px 6px}.shop-shell{margin:0 auto;max-width:860px}.shop-controls{background:var(--surface);border:1px solid var(--line);border-radius:8px;margin-bottom:12px;padding:12px}.shop-list{display:grid;gap:10px}.shop-task{background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--teal);border-radius:8px;color:var(--text);cursor:pointer;display:grid;gap:7px;padding:12px;text-align:left}.shop-task>span:nth-child(2){font-size:13px;font-weight:550}.shop-task-head strong{font-size:14px;font-weight:600;line-height:1.25}.shop-task-meta{flex-wrap:wrap;justify-content:flex-start}.shop-task-log,.shop-task-meta{color:var(--muted);font-size:12px;font-weight:550}.shop-task-log{background:#f7faf9;border:1px solid var(--line);border-radius:8px;justify-self:start;padding:5px 7px}.mobile-sheet{background:var(--surface);border-radius:8px 8px 0 0;bottom:0;box-shadow:var(--shadow);display:grid;gap:14px;left:50%;max-height:88vh;max-width:860px;overflow:auto;padding:18px 18px max(18px,env(safe-area-inset-bottom));position:fixed;transform:translateX(-50%);width:100%;z-index:30}.shop-detail-grid{display:grid;gap:4px}.mobile-subsection{border-top:1px solid var(--line);display:grid;gap:8px;padding-top:12px}.mobile-subsection h3{margin:0}.shop-actions{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.shop-actions button{min-height:52px}.empty-state{align-items:center;color:var(--muted);display:grid;gap:8px;justify-items:center;padding:34px}@media (max-width:1100px){.kpi-strip{grid-template-columns:repeat(3,minmax(150px,1fr))}.command-bar{grid-template-columns:1fr}.command-actions{justify-content:flex-start}.filter-panel .filter-grid,.journal-filter-grid{grid-template-columns:repeat(3,minmax(140px,1fr))}.production-log-row{grid-template-columns:90px 108px minmax(0,1fr)}.production-log-metrics,.production-log-row>a{grid-column:3}}@media (max-width:720px){.app-shell,.shop-shell{padding:12px}.shop-header,.topbar{align-items:stretch;display:grid}.top-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr))}.user-nav{display:grid;grid-template-columns:1fr}.collapsible-trigger{align-items:stretch;grid-template-columns:1fr}.collapsible-action{justify-self:start}.kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-item{min-height:78px}.toolbar{display:none}.command-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.related-move-actions{display:grid;grid-template-columns:1fr}.part-review-header,.part-review-item{align-items:stretch;grid-template-columns:1fr}.part-review-header{display:grid}.part-review-item>div{grid-template-columns:1fr}.part-review-item p,.part-review-item small{grid-column:auto}.command-bar{align-items:stretch;display:grid}.command-actions,.command-bar .range-controls,.range-segments{align-items:stretch;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.board-search{min-width:100%}.create-task-drawer .quick-entry-grid,.filter-panel .filter-grid,.journal-date-range,.journal-filter-grid,.production-log-row{grid-template-columns:1fr}.production-log-panel-header{align-items:start;display:grid}.production-log-metrics,.production-log-row>a{grid-column:auto}.quick-entry{display:block}.actual-form,.quick-entry-grid{grid-template-columns:1fr}.board-wrap{display:none}.alerts-strip,.capacity-summary{align-items:flex-start;display:grid}.entity-row,.manage-actionbar{align-items:stretch;display:grid}.entity-row{grid-template-columns:1fr}.entity-actions{justify-content:stretch}.entity-actions .icon-text-button{flex:1 1}.product-parts-header{align-items:stretch;display:grid;padding-right:0}.product-part-row{align-items:stretch}.drawer-form-grid,.product-part-row{grid-template-columns:1fr}.drawer{border-left:0;width:100vw}.shop-actions{grid-template-columns:1fr}}