:root{color:#1f2933;background:#eef2f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{border:0}h1,h2,p{margin:0}.login-page{align-items:center;background:#eef2f4;display:flex;justify-content:center;min-height:100vh;padding:24px}.login-panel{background:#fff;border:1px solid #d8e0e3;border-radius:8px;box-shadow:0 18px 50px #1723261a;display:flex;flex-direction:column;gap:18px;max-width:420px;padding:28px;width:100%}.login-brand span{color:#0f7c72;font-size:13px;font-weight:800;text-transform:uppercase}.login-brand h1{font-size:28px;margin-top:4px}.login-card-form{display:flex;flex-direction:column;gap:10px}.login-card-form .primary-action{min-height:40px}.erp-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.shell-nav{background:#172326;color:#f7fafb;display:flex;flex-direction:column;gap:22px;padding:22px 16px}.brand-block{border-bottom:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:3px;padding:0 8px 18px}.brand-block strong{font-size:20px}.brand-block span,.nav-group-title,.nav-link small,.workspace-topbar p,.summary-card span,.workflow-step span,.metric span,.detail-list dt,.token-picker span{color:#66767a;font-size:12px}.shell-nav .brand-block span,.shell-nav .nav-group-title,.shell-nav .nav-link small{color:#a8b8bc}.nav-group{display:flex;flex-direction:column;gap:5px}.nav-group-title{font-weight:700;letter-spacing:0;padding:0 8px 4px;text-transform:uppercase}.nav-link{align-items:center;background:transparent;border-radius:6px;color:#e7eef0;cursor:pointer;display:flex;justify-content:space-between;min-height:38px;padding:0 10px;text-align:left;width:100%}.nav-link:hover,.nav-link.active{background:#253a3e}.nav-link.active{box-shadow:inset 3px 0 #2ea397}.workspace{min-width:0;padding:20px}.workspace-topbar{align-items:center;background:#fff;border:1px solid #d8e0e3;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:16px;min-height:74px;padding:14px 16px}.workspace-topbar h1{font-size:22px;font-weight:750}.workspace-topbar p{margin-top:3px}.topbar-actions,.login-form,.compact-form,.inline-form,.toolbar,.row-actions,.button-stack{display:flex;gap:8px}.inline-section{margin-top:18px}.topbar-actions,.login-form{align-items:center}.login-form input{width:170px}.session-chip{background:#e8f4f2;border:1px solid #b7d8d3;border-radius:999px;color:#0d4f49;font-size:13px;font-weight:700;padding:8px 12px;white-space:nowrap}.error-banner,.notice-banner{border-radius:6px;margin-bottom:14px;padding:10px 12px}.error-banner{background:#fff1f0;border:1px solid #ffb4a8;color:#9f1d14}.notice-banner{background:#eef8ee;border:1px solid #abd8ad;color:#205522}.page-stack{display:flex;flex-direction:column;gap:14px}.page-grid{display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(340px,.4fr)}.page-grid--split{align-items:start}.panel,.side-panel{min-width:0}.panel{background:#fff;border:1px solid #d8e0e3;border-radius:8px;padding:14px}.work-order-detail-shell{background:#fff;border:1px solid #cbd7db;border-radius:8px;display:flex;flex-direction:column;gap:12px;min-height:640px;padding:14px}.work-order-detail-header{align-items:flex-start;border-bottom:1px solid #e2eaed;display:flex;gap:16px;justify-content:space-between;padding-bottom:12px}.work-order-detail-header h2{color:#152024;font-size:24px;line-height:1.15;margin:2px 0 4px}.work-order-detail-header p{color:#5c6970;font-size:13px}.work-order-detail-status{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.work-order-detail-tabs{display:flex;justify-content:flex-start}.work-order-tab-panel{border:1px solid #d8e0e3;border-radius:8px;display:flex;flex:1;flex-direction:column;gap:14px;min-height:500px;overflow:hidden;padding:14px}.work-order-overview-grid{display:grid;gap:14px;grid-template-columns:minmax(260px,.65fr) minmax(320px,1fr)}.work-order-detail-list{align-content:start;border:1px solid #edf1f2;border-radius:8px;padding:12px}.work-order-overview-metrics{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.work-order-section-header{align-items:center;display:flex;justify-content:space-between}.work-order-section-header h2{color:#152024;font-size:16px;margin:0}.work-order-detail-section{border-top:1px solid #e4ebee;display:grid;gap:12px;padding-top:14px}.work-order-detail-section:first-child{border-top:0;padding-top:0}.work-order-batches-panel{overflow:visible}.work-order-start-batch{align-items:center;max-width:420px}.work-order-start-batch input{width:160px}.work-order-batch-history{display:grid;gap:12px}.work-order-detail-section>.table-wrap+.table-wrap{margin-top:4px}.batch-summary-grid,.batch-balance-grid{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(130px,1fr))}.batch-summary-grid .metric strong,.batch-balance-grid .metric strong{font-size:18px;overflow-wrap:anywhere}.batch-primary-area{background:#f7fafb;border:1px solid #d8e0e3;border-radius:8px;padding:12px}.batch-empty-start{display:grid;gap:10px}.active-batch-card{align-items:center;background:#fff;border:1px solid #99cdc6;border-left:4px solid #0f7c72;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;padding:12px}.active-batch-card strong{color:#152024;display:block;font-size:20px;margin:2px 0}.active-batch-card p,.batch-detail-section p{color:#5c6970;font-size:13px;margin:0}.batch-card-metrics,.batch-timeline-quantities{display:flex;flex-wrap:wrap;gap:6px}.batch-card-metrics span,.batch-timeline-quantities span{background:#eef3f5;border-radius:999px;color:#405157;font-size:12px;font-weight:700;padding:5px 8px}.batch-status-badge{border-radius:999px;display:inline-block;font-size:12px;font-weight:750;padding:4px 8px}.batch-status-active{background:#e8f0ff;color:#244680}.batch-status-ready{background:#e8f4f2;color:#0d4f49}.batch-status-done{background:#e8f6ec;color:#236739}.batch-status-blocked{background:#fff6db;color:#875a12}.batch-status-danger{background:#fff1f0;color:#9f1d14}.latest-batch-row{background:#f2fbfa}.batch-detail-section{border:1px solid #d8e0e3;border-radius:8px;padding:12px}.batch-next-action{align-items:center;background:#fff;border:1px solid #edf1f2;border-radius:8px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding:10px}.batch-sort-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.batch-sort-controls label{color:#66767a;display:grid;font-size:12px;font-weight:700;gap:4px;text-transform:uppercase}.batch-sort-controls input{min-width:88px}.batch-timeline{display:grid;gap:8px}.batch-timeline-item{border:1px solid #edf1f2;border-left:3px solid #94a3ad;border-radius:8px;display:grid;gap:8px;padding:10px}.batch-timeline-item>div:first-child{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.batch-timeline-item>div:first-child span,.raw-history summary{color:#66767a;font-size:12px}.raw-history{border-top:1px solid #edf1f2;padding-top:8px}.raw-history summary{cursor:pointer;font-weight:750}.raw-history .table-wrap{margin-top:8px}.side-panel{display:flex;flex-direction:column;gap:14px}.panel--large{min-height:580px}.modal-backdrop{align-items:center;background:#0a191c6b;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:20}.modal-panel{background:#fff;border:1px solid #c9d4d8;border-radius:8px;box-shadow:0 18px 48px #0c1c2042;max-width:460px;padding:14px;width:min(460px,100%)}.panel-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.panel-header h2{font-size:16px;font-weight:750}.summary-grid{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(140px,1fr))}.summary-card,.workflow-step{background:#fff;border:1px solid #d8e0e3;border-radius:8px;min-height:82px;padding:13px}.summary-card strong{color:#152024;display:block;font-size:30px;margin-top:8px}.summary-card.warning strong{color:#a44513}.workflow-band{background:#fff;border:1px solid #d8e0e3;border-radius:8px;display:grid;gap:8px;grid-template-columns:repeat(6,minmax(120px,1fr));padding:10px}.workflow-step{background:#f8fafb;min-height:70px}.workflow-step strong{display:block;font-size:14px;margin-top:8px}.compact-form.stacked,.button-stack{flex-direction:column}.qc-action-stack{display:grid;gap:8px;min-width:180px}.qc-disposition-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(72px,1fr)) minmax(150px,1.4fr) max-content;min-width:560px}.qc-disposition-grid label{color:#5c6970;display:grid;font-size:12px;font-weight:700;gap:3px}.qc-disposition-grid input{min-width:0}.material-prep-list{display:grid;gap:16px}.material-step-bar{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.material-step-list{display:flex;flex-wrap:wrap;gap:8px}.material-step{background:#f4f7f8;border:1px solid #dbe5e8;border-radius:999px;color:#56666b;font-size:13px;font-weight:700;padding:7px 10px}.material-step.complete{background:#e8f4f2;border-color:#b7d8d3;color:#0d4f49}.material-prep-item{border-top:1px solid #e4ebee;display:grid;gap:12px;padding-top:14px}.material-prep-header{align-items:end;display:flex;gap:12px;justify-content:space-between}.material-prep-header>div{display:grid;gap:3px}.material-prep-header strong{font-size:16px}.eyebrow,.muted-note{color:#6b787d;font-size:12px;font-weight:700}.tooltip-label{align-items:center;display:inline-flex;gap:4px}.tooltip-mark{align-items:center;background:#eef4f5;border:1px solid #cbd6d9;border-radius:999px;color:#526166;display:inline-flex;font-size:10px;height:14px;justify-content:center;line-height:1;width:14px}.danger-note,.read-only-banner{border-radius:6px;font-size:13px;font-weight:700;padding:10px 12px}.danger-note{background:#fff7ed;border:1px solid #fed7aa;color:#9a3412}.read-only-banner{background:#fff1f0;border:1px solid #fecaca;color:#9f1d14;margin-top:12px}.material-metrics{grid-template-columns:repeat(5,minmax(120px,1fr))}input,select,textarea{background:#fff;border:1px solid #c7d1d5;border-radius:6px;color:#1f2933;min-height:36px;min-width:0;padding:0 10px}textarea{min-height:80px;padding:8px 10px;resize:vertical}.toolbar input{min-width:260px}.toolbar select{min-width:150px}.primary-action,.table-action,.danger-action,.segmented-control button,.token-button{border-radius:6px;cursor:pointer;font-weight:700;min-height:34px;padding:0 12px}.primary-action{background:#0f7c72;color:#fff}.primary-action:hover{background:#0b665e}.primary-action:disabled,.table-action:disabled,.danger-action:disabled{cursor:not-allowed;opacity:.65}.table-action{background:#fff;border:1px solid #0f7c72;color:#0b665e}.danger-action{background:#fff;border:1px solid #c2410c;color:#9a3412}.full-width{width:100%}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:100%;table-layout:fixed}th,td{border-bottom:1px solid #edf1f2;font-size:13px;overflow:hidden;padding:9px 8px;text-align:left;text-overflow:ellipsis;white-space:nowrap}th{color:#46575c;font-size:12px;font-weight:750}.selected-row{background:#eef8f7}.clickable-row{cursor:pointer}.clickable-row:hover,.clickable-row:focus{background:#f4fbfa;outline:none}.metric-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0}.metric{border:1px solid #edf1f2;border-radius:6px;padding:10px}.metric strong{display:block;font-size:22px;margin-top:4px}.detail-list{display:grid;gap:6px 10px;grid-template-columns:88px minmax(0,1fr);margin:0}.detail-list dd{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.split-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.segmented-control{background:#fff;border:1px solid #d8e0e3;border-radius:8px;display:inline-flex;padding:4px;width:fit-content}.segmented-control button{background:transparent;color:#435257}.segmented-control button.active{background:#172326;color:#fff}.fill-meter{align-items:center;display:grid;gap:6px;grid-template-columns:48px minmax(72px,1fr)}.fill-meter-track{background:#e8eef0;border-radius:999px;height:7px;overflow:hidden}.fill-meter-bar{background:#2ea397;height:100%}.status-chip{border-radius:999px;display:inline-block;font-size:12px;font-weight:750;padding:4px 8px}.status-queued{background:#e8f0ff;color:#244680}.status-printing,.status-claimed{background:#fff6db;color:#875a12}.status-succeeded,.status-approved{background:#e8f6ec;color:#236739}.status-held,.status-pending{background:#fff6db;color:#875a12}.status-rejected,.status-failed,.status-cancelled{background:#fff1f0;color:#9f1d14}.token-picker{border-top:1px solid #edf1f2;margin-top:12px;padding-top:12px}.token-picker>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;max-height:150px;overflow-y:auto}.token-button{background:#f2f6f7;border:1px solid #cbd6d9;color:#223033;min-height:28px}.empty-state{border:1px dashed #c8d3d7;border-radius:8px;color:#647277;padding:18px;text-align:center}@media(max-width:1180px){.summary-grid,.batch-summary-grid,.batch-balance-grid,.workflow-band{grid-template-columns:repeat(3,minmax(140px,1fr))}.work-order-overview-grid,.page-grid{grid-template-columns:1fr}}@media(max-width:760px){.erp-shell{grid-template-columns:1fr}.shell-nav{position:static}.workspace{padding:12px}.workspace-topbar,.topbar-actions,.login-form,.panel-header,.material-step-bar,.toolbar,.active-batch-card,.batch-next-action,.batch-sort-controls,.work-order-detail-header,.work-order-detail-status,.work-order-start-batch,.compact-form,.inline-form{align-items:stretch;flex-direction:column}.summary-grid,.batch-summary-grid,.batch-balance-grid,.workflow-band,.split-grid,.work-order-overview-metrics,.metric-grid{grid-template-columns:1fr}.work-order-detail-shell{min-height:0;padding:12px}.work-order-detail-status{justify-content:stretch}.work-order-start-batch,.work-order-start-batch input{max-width:none;width:100%}.batch-table{min-width:0;table-layout:auto}.batch-table thead{display:none}.batch-table tbody,.batch-table tr,.batch-table td{display:block}.batch-table tr{border:1px solid #edf1f2;border-radius:8px;margin-bottom:8px;padding:8px}.batch-table td{border-bottom:0;padding:4px 0;white-space:normal}.batch-table td:first-child{font-weight:750}.batch-table td:last-child .table-action{width:100%}.toolbar input,.toolbar select,.login-form input{min-width:0;width:100%}}
