html{--ral-5005:#005387;--ral-5005-dark:#003f66;--ral-5005-soft:#d9eaf3;--ral-5005-surface:#eaf2f7;--app-bg:#f4f7fa;--line:#d8e3eb;--muted:#637382;--text:#182633;--weekend:#f4efe6;background:var(--app-bg)}body{margin:0}#root{min-height:100vh}.app-frame{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--ral-5005-dark);color:#f6fbff;padding:22px 16px}.brand-mark{background:var(--ral-5005-soft);color:var(--ral-5005-dark);border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.brand-title{color:#fff;font-size:1rem;font-weight:750;line-height:1.2}.brand-subtitle{color:#b9d0df;font-size:.8rem;line-height:1.3}.nav-list .nav-button{color:#dcecf5;justify-content:flex-start;padding:9px 10px}.nav-list .nav-button.active{color:var(--ral-5005-dark);background:#fff}.content{min-width:0;padding:24px}.page-shell{padding:20px}.table-search{width:100%;max-width:360px}.data-table-wrap,.schedule-table-wrap{overflow:auto}.data-table-wrap{max-height:calc(100vh - 230px)}.empty-state{justify-content:center;align-items:center;min-height:120px;display:flex}.schedule-table-wrap{max-height:calc(100vh - 222px);overflow-x:hidden}.schedule-table-wrap table{table-layout:fixed;width:100%}.employee-col-size{width:158px}.day-col-size{width:auto}.total-col-size{width:48px}.sticky-col{z-index:3;position:sticky;left:0}thead .sticky-col{z-index:5}.employee-col{background:#fff;width:158px;min-width:158px;max-width:158px;padding:5px 6px!important}thead .employee-col{background:var(--ral-5005-surface)}.day-cell{width:auto;min-width:0;padding:2px 1px!important}.hour-cell{width:auto;min-width:0;padding:1px!important}.day-cell.weekend,.hour-cell.weekend{background:var(--weekend)}.hour-input{box-sizing:border-box;color:var(--text);font:inherit;text-align:center;background:0 0;border:1px solid #0000;border-radius:5px;width:26px;height:24px;padding:0;font-size:.78rem;font-weight:650}.hour-input:focus{border-color:var(--ral-5005);background:#fff;outline:none}.hour-input::-webkit-inner-spin-button{appearance:none;margin:0}.hour-input::-webkit-outer-spin-button{appearance:none;margin:0}.total-col{background:var(--ral-5005-surface);z-index:2;width:48px;min-width:48px;position:sticky;right:0;padding:4px 3px!important}thead .total-col{z-index:4}.schedule-table-wrap .MuiTableCell-root{font-size:.78rem;line-height:1.15}.schedule-table-wrap .MuiTypography-caption{font-size:.68rem;line-height:1.1}.employee-name,.employee-profession{text-overflow:ellipsis;white-space:nowrap;max-width:145px;display:block;overflow:hidden}.order-line{border-bottom:1px solid var(--line);padding:8px 0}.order-line-number{color:var(--muted);text-align:center;min-width:24px;font-weight:700}.order-lines-list{min-width:280px}.order-lines-list-item{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:12px;padding:3px 0;display:grid}.order-lines-list-item:last-child{border-bottom:none}.order-lines-list-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.order-lines-list-quantity{background:var(--ral-5005-surface);text-align:center;border-radius:999px;min-width:26px;padding:1px 7px;font-weight:700}.drag-handle{color:var(--muted);cursor:grab;justify-content:center;align-items:center;width:24px;height:28px;display:inline-flex}.drag-handle:active{cursor:grabbing}.route-row.dragging{opacity:.45}.queue-order-row{cursor:grab;border:1px solid #d7e3ec;border-radius:8px;padding:0}.queue-order-row.dragging{opacity:.5}.queue-order-content{grid-template-columns:54px minmax(180px,260px) minmax(0,1fr);align-items:stretch;gap:14px;padding:14px;display:grid}.queue-order-position{border-right:1px solid var(--line);color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.queue-order-index{color:var(--text);font-size:1.15rem;font-weight:850}.queue-order-summary{align-self:center;min-width:0}.queue-order-title{color:var(--ral-5005);font-weight:800}.queue-order-client{overflow-wrap:anywhere;margin-top:3px;font-size:.95rem;font-weight:750;line-height:1.25}.queue-order-lines{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-content:start;gap:8px;display:grid}.queue-order-line-chip{border:1px solid var(--line);background:#f8fbfd;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:34px;padding:6px 8px;display:grid}.queue-order-line-chip .MuiTypography-root{overflow-wrap:anywhere;line-height:1.2}.route-row:hover .drag-handle{color:var(--ral-5005)}.stage-time-table{min-width:980px}.stage-time-table .MuiTextField-root{min-width:0}.production-day-row{grid-template-columns:230px minmax(0,1fr);gap:18px;padding:14px;display:grid}.production-day-meta{border-right:1px solid var(--line);padding-right:14px}.production-task-list{min-width:0}.production-task{border:1px solid var(--line);border-left:4px solid var(--ral-5005);background:#f8fbfd;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:12px;padding:9px 10px;display:grid}.production-task .MuiTypography-root{overflow-wrap:anywhere}.fact-task-row{align-items:center}.journal-row{border:1px solid var(--line);border-left:4px solid var(--ral-5005);border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.print-only{display:none}.print-work-table{border-collapse:collapse;width:100%}.print-work-table th,.print-work-table td{text-align:left;vertical-align:top;border:1px solid #9aa8b3;padding:6px 7px;font-size:12px}.print-work-table th{background:#eaf2f7;font-weight:750}.month-dashboard-wrap{width:100%;overflow:hidden}.month-dashboard-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%}.dashboard-order-col-size{width:clamp(180px,18vw,240px)}.dashboard-day-col-size{width:auto}.month-dashboard-table th,.month-dashboard-table td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);box-sizing:border-box;vertical-align:top}.dashboard-order-col{text-align:left;z-index:3;background:#fff;min-width:0;padding:8px 10px;left:0}thead .dashboard-order-col,.dashboard-day-head{background:var(--ral-5005-surface);z-index:5;position:sticky;top:0}.sticky-dashboard-col{position:sticky}thead .sticky-dashboard-col{z-index:7}.dashboard-day-head{color:var(--text);text-align:center;height:42px;padding:5px 4px;font-size:.78rem}.dashboard-day-head span,.dashboard-day-head small{line-height:1.15;display:block}.dashboard-day-head small{color:var(--muted);font-weight:600}.dashboard-day-head.weekend,.dashboard-day-cell.weekend{background:var(--weekend)}.dashboard-day-cell{background:#fff;height:82px;padding:4px}.dashboard-order-number{color:var(--ral-5005);font-weight:750}.dashboard-item-name{overflow-wrap:anywhere;margin-top:2px;font-weight:750;line-height:1.25}.dashboard-work-chip{border:1px solid var(--line);border-left:3px solid var(--ral-5005);cursor:pointer;background:#f8fbfd;border-radius:6px;gap:3px;min-height:42px;padding:4px 5px;display:grid}.dashboard-work-chip:hover{border-color:var(--ral-5005)}.dashboard-work-chip.fact-card{cursor:default}.dashboard-work-chip.status-overflow{background:#fff3e0;border-color:#ffb74d #ffb74d #ffb74d #f57c00}.dashboard-work-chip.status-done{background:#e8f5e9;border-color:#81c784 #81c784 #81c784 #2e7d32}.dashboard-work-chip.status-partial{background:#f3e5f5;border-color:#ba68c8 #ba68c8 #ba68c8 #7b1fa2}.dashboard-work-chip .MuiTypography-root{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.15;display:-webkit-box;overflow:hidden}.dashboard-work-chip strong{color:var(--ral-5005-dark);font-size:.7rem;line-height:1}@media (width<=860px){.app-frame{grid-template-columns:1fr}.sidebar{padding:14px}.nav-list{flex-direction:row!important}.nav-list .nav-button{flex:1 1 0}.content{padding:14px}.data-table-wrap,.schedule-table-wrap{max-height:none}.production-day-row{grid-template-columns:1fr}.queue-order-content{grid-template-columns:44px minmax(0,1fr)}.queue-order-lines{grid-column:1/-1}.production-day-meta{border-right:none;border-bottom:1px solid var(--line);padding-bottom:12px;padding-right:0}.month-dashboard-wrap{max-height:none}}@media print{@page{margin:12mm;size:A4 portrait}body{background:#fff}body *{visibility:hidden}.print-work-orders,.print-work-orders *{visibility:visible}.print-work-orders{width:100%;display:block;position:absolute;top:0;left:0}.print-work-sheet{break-after:page;color:#000;min-height:273mm}.print-work-sheet:last-child{break-after:auto}}
