:root{color:#1f2937;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f4f6f8;font-family:Inter,Arial,sans-serif}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh}button,input,select,textarea{font:inherit}body{color:#17231d;background:#f4f7f5;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.employeesTestPage{background:radial-gradient(circle at 8% 4%,#1e784a0b,#0000 26%),#f4f7f5;min-height:100vh;padding:34px 38px 50px}.employeesContainer{width:100%;max-width:1500px;margin:0 auto}.employeesHeader{justify-content:space-between;align-items:center;gap:28px;margin-bottom:28px;display:flex}.employeesHeaderLeft{min-width:0}.employeesBack{color:#46735b;letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:900}.employeesHeader h1{color:#111d17;margin:0;font-size:32px;font-weight:900;line-height:1.1}.employeesHeader p{color:#74827b;margin:7px 0 0;font-size:14px;line-height:1.45}.employeesCurrentUser{background:#fffffffa;border:1px solid #d9e4dd;border-radius:12px;flex:none;align-items:center;gap:10px;padding:10px 14px;display:flex;box-shadow:0 8px 22px #1f3f2e0f}.employeesCurrentUser div{gap:2px;display:grid}.employeesCurrentUser small{color:#839189;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:800}.employeesCurrentUser strong{color:#1e2d25;white-space:nowrap;font-size:13px;font-weight:900}.employeesOnlineDot{background:#20bb69;border-radius:50%;flex:0 0 9px;width:9px;height:9px;box-shadow:0 0 0 4px #20bb691a}.employeesTopActions{justify-content:flex-end;align-items:center;gap:10px;margin-bottom:18px;display:flex}.employeesPrimaryButton{color:#fff;cursor:pointer;background:#153f2d;border:0;border-radius:10px;min-height:42px;padding:0 18px;font-size:13px;font-weight:900;transition:background .15s,transform .15s,box-shadow .15s}.employeesPrimaryButton:hover{background:#0f3122;box-shadow:0 7px 18px #153f2d24}.employeesPrimaryButton:active{transform:translateY(1px)}.employeesPrimaryButton:disabled{opacity:.6;cursor:default}.employeesSummary{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.employeesSummaryCard{background:#fff;border:1px solid #dbe4de;border-radius:14px;min-height:104px;padding:20px;box-shadow:0 4px 14px #19362806}.employeesSummaryCard span{color:#718078;margin-bottom:8px;font-size:13px;font-weight:500;display:block}.employeesSummaryCard strong{color:#111d17;font-size:28px;font-weight:900;line-height:1}.employeesPanel{background:#fff;border:1px solid #dbe4de;border-radius:16px;overflow:hidden;box-shadow:0 5px 18px #19362806}.employeesPanelHeader{border-bottom:1px solid #e6ece8;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.employeesPanelHeader h2{color:#18241e;margin:0;font-size:19px;font-weight:900;line-height:1.2}.employeesPanelHeader p{color:#809087;margin:5px 0 0;font-size:13px}.employeesPanelActions{align-items:center;gap:10px;display:flex}.employeesRefresh{color:#294638;cursor:pointer;background:#fff;border:1px solid #cfdcd5;border-radius:9px;min-height:38px;padding:0 16px;font-size:13px;font-weight:900}.employeesRefresh:hover{background:#f4f8f6}.employeesTableWrap{overflow-x:auto}.employeesTable{border-collapse:collapse;table-layout:auto;width:100%}.employeesTable thead{background:#f8faf9}.employeesTable th{color:#708078;text-align:left;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;padding:12px 16px;font-size:11px;font-weight:900}.employeesTable td{color:#25352d;vertical-align:middle;border-top:1px solid #edf1ee;padding:15px 16px;font-size:13px}.employeesTable tbody tr{transition:background .12s}.employeesTable tbody tr:hover{background:#fbfcfb}.employeesTable td strong{color:#17231d;font-weight:900}.employeeRole,.employeeStatus{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;min-height:25px;padding:0 9px;font-size:11px;font-weight:900;display:inline-flex}.employeeRole{color:#53665c;background:#eef2f0}.employeeRole.admin{color:#176e41;background:#e5f3ea}.employeeRole.operator{color:#315e48;background:#edf3f0}.employeeRole.viewer{color:#59606d;background:#f0f1f4}.employeeStatus.active{color:#177144;background:#e7f6ed}.employeeStatus.disabled{color:#a33d3d;background:#fff0f0}.employeeRowActions{align-items:center;gap:7px;display:flex}.employeeSmallButton{color:#355444;cursor:pointer;background:#fff;border:1px solid #d4dfd9;border-radius:7px;min-height:32px;padding:0 10px;font-size:11px;font-weight:800}.employeeSmallButton:hover{background:#f4f8f6}.employeeSmallButton.danger{color:#a33d3d;border-color:#efcccc}.employeeSmallButton.danger:hover{background:#fff5f5}.employeeModalOverlay{z-index:10000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#121f186b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.employeeModal{background:#fff;border:1px solid #d8e3dc;border-radius:16px;width:100%;max-width:620px;max-height:calc(100vh - 48px);overflow-y:auto;box-shadow:0 30px 90px #162d2133}.employeeModalHeader{border-bottom:1px solid #e8edea;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px 18px;display:flex}.employeeModalHeader h2{color:#18241e;margin:0;font-size:21px;font-weight:900}.employeeModalClose{color:#627168;cursor:pointer;background:#fff;border:1px solid #d8e2dc;border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;padding:0;font-size:20px;line-height:1;display:grid}.employeeFormField{gap:7px;display:grid}.employeeFormField label{color:#53675c;font-size:12px;font-weight:900}.employeeFormField input,.employeeFormField select{color:#18231d;width:100%;min-width:0;min-height:44px;font:inherit;background:#fff;border:1px solid #cfdbd4;border-radius:9px;outline:none;padding:10px 12px;font-size:13px;transition:border-color .12s,box-shadow .12s}.employeeFormField input:focus,.employeeFormField select:focus{border-color:#4f8c6d;box-shadow:0 0 0 3px #4f8c6d1f}.employeeFormField input::placeholder{color:#a2aea8}.employeePasswordField{position:relative}.employeePasswordField input{padding-right:92px}.employeePasswordToggle{color:#416552;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 8px;font-size:11px;font-weight:900;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.employeePasswordToggle:hover{background:#eef5f1}.employeeFormHint{color:#87958e;font-size:11px;line-height:1.4}.employeeFormError{color:#a33b3b;background:#fff2f2;border:1px solid #efc7c7;border-radius:9px;margin-top:16px;padding:11px 12px;font-size:12px;line-height:1.45}.employeeFormSuccess{color:#217044;background:#edf8f1;border:1px solid #c9e5d4;border-radius:9px;margin-top:16px;padding:11px 12px;font-size:12px;line-height:1.45}.employeeModalActions{justify-content:flex-end;align-items:center;gap:10px;margin-top:22px;display:flex}.employeeCancelButton{color:#3b5146;cursor:pointer;background:#fff;border:1px solid #d2ddd7;border-radius:9px;min-height:42px;padding:0 16px;font-size:13px;font-weight:900}.employeeCreateButton{color:#fff;cursor:pointer;background:#153f2d;border:0;border-radius:9px;min-height:42px;padding:0 18px;font-size:13px;font-weight:900}.employeeCreateButton:disabled,.employeeCancelButton:disabled{opacity:.6;cursor:default}.employeesMessage,.employeesErrorCard{background:#fff;border:1px solid #dce5df;border-radius:16px;width:100%;max-width:520px;margin:150px auto 0;padding:30px;box-shadow:0 18px 50px #19362814}.employeesMessage{color:#63736b;text-align:center;font-weight:800}.employeesErrorCard h1{margin:0 0 10px;font-size:23px}.employeesErrorCard p{color:#a33d3d;margin:0 0 18px;line-height:1.5}.employeesErrorCard button{color:#fff;cursor:pointer;background:#173d2c;border:0;border-radius:8px;min-height:42px;padding:0 18px;font-weight:900}.employeesEmpty{color:#809087;text-align:center;padding:42px 20px;font-size:13px}@media (width<=1000px){.employeesTestPage{padding:24px}.employeesHeader{flex-direction:column;align-items:flex-start}.employeesCurrentUser{align-self:flex-start}.employeesSummary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.employeesTestPage{padding:16px}.employeesHeader h1{font-size:27px}.employeesTopActions{justify-content:stretch}.employeesPrimaryButton{width:100%}.employeesSummary{grid-template-columns:1fr}.employeesPanelHeader{flex-direction:column;align-items:stretch}.employeesPanelActions,.employeesRefresh{width:100%}.employeeFormGrid{grid-template-columns:1fr}.employeeFormField.full{grid-column:auto}.employeeModalActions{flex-direction:column-reverse}.employeeCancelButton,.employeeCreateButton{width:100%}}@media (width<=520px){.employeesTestPage{padding:12px}.employeesHeader{margin-bottom:20px}.employeesCurrentUser{width:100%}.employeeModalOverlay{padding:10px}.employeeModal{border-radius:12px;max-height:calc(100vh - 20px)}.employeeModalHeader,.employeeForm{padding:18px}.employeesTable th,.employeesTable td{padding-left:12px;padding-right:12px}}.employeesPanelHeader>button:last-child,.employeesPanelActions button:last-child{color:#fff;cursor:pointer;background:#153f2d;border:0;border-radius:9px;min-height:40px;padding:0 16px;font-size:13px;font-weight:800;transition:background .15s,box-shadow .15s}.employeesPanelHeader>button:last-child:hover,.employeesPanelActions button:last-child:hover{background:#0f3122;box-shadow:0 6px 16px #153f2d29}.employeeModal{background:#fff;border:1px solid #d8e3dc;border-radius:18px;width:100%;max-width:640px;overflow:hidden;box-shadow:0 30px 90px #162d2138}.employeeModalHeader{padding:24px 26px 18px}.employeeModalHeader h2{margin:0 0 5px;font-size:22px;font-weight:900}.employeeModalHeader p{color:#7f8d86;margin:0;font-size:13px}.employeeModalClose{color:#687870;cursor:pointer;background:#fff;border:1px solid #d6e0da;border-radius:9px;width:36px;height:36px;font-size:20px}.employeeModalClose:hover{background:#f3f7f5}.employeeForm{padding:22px 26px 26px}.employeeForm label{color:#42574c;margin-bottom:6px;font-size:12px;font-weight:800;display:block}.employeeForm input,.employeeForm select{color:#17231d;background:#fff;border:1px solid #cfdad4;border-radius:9px;outline:none;width:100%;min-height:44px;padding:10px 12px;font-family:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s}.employeeForm input:focus,.employeeForm select:focus{border-color:#4b8969;box-shadow:0 0 0 3px #4b89691f}.employeeForm input::placeholder{color:#a2ada7}.employeeFormGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 18px;display:grid}.employeeFormField.full{grid-column:1/-1}.employeeFormField{min-width:0}.employeeModalActions{border-top:1px solid #edf1ef;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:18px;display:flex}.employeeCancelButton{color:#405449;cursor:pointer;background:#fff;border:1px solid #ced9d3;border-radius:9px;min-width:100px;min-height:42px;padding:0 16px;font-size:13px;font-weight:800}.employeeCancelButton:hover{background:#f4f7f5}.employeeCreateButton{color:#fff;cursor:pointer;background:#153f2d;border:0;border-radius:9px;min-width:160px;min-height:42px;padding:0 18px;font-size:13px;font-weight:900}.employeeCreateButton:hover{background:#0f3122}.employeeCreateButton:disabled{opacity:.6;cursor:default}.employeeForm button[type=submit]{color:#fff;cursor:pointer;background:#153f2d;border:0;border-radius:9px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:900}.employeeForm button[type=button]{font-family:inherit}@media (width<=700px){.employeeFormGrid{grid-template-columns:1fr}.employeeModal{max-width:100%}.employeeModalActions{flex-direction:column-reverse}.employeeCancelButton,.employeeCreateButton{width:100%}}.employeesPanelHeader button:last-child{color:#173d2c;cursor:pointer;background:#fff;border:1px solid #cfdcd5;border-radius:9px;min-height:40px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:800}.employeesPanelHeader button:last-child:hover{background:#f2f7f4;border-color:#abc4b6}.employeeCancelButton{color:#173d2c;cursor:pointer;background:#fff;border:1px solid #cfdcd5;border-radius:9px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:800}.employeeCancelButton:hover{background:#f2f7f4;border-color:#abc4b6}.employeeModalActions>button:first-child{appearance:none;color:#173d2c;cursor:pointer;background:#fff;border:1px solid #cfdcd5;border-radius:9px;min-width:100px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:800;transition:background .15s,border-color .15s,box-shadow .15s}.employeeModalActions>button:first-child:hover{background:#f2f7f4;border-color:#a9c2b4;box-shadow:0 3px 10px #153f2d0f}.employeeModalActions>button:first-child:active{background:#eaf2ed}.employeeCancel{color:#173d2c;cursor:pointer;background:#fff;border:1px solid #cfdcd5;border-radius:9px;min-width:105px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:800;transition:background .15s,border-color .15s,box-shadow .15s}.employeeCancel:hover{background:#f2f7f4;border-color:#aac3b5;box-shadow:0 4px 12px #153f2d0f}.employeeCancel:active{background:#eaf2ed}.employeeCancel:disabled{opacity:.55;cursor:default}.employeeSave{color:#fff;cursor:pointer;background:#153f2d;border:1px solid #153f2d;border-radius:9px;min-width:170px;min-height:42px;padding:0 18px;font-family:inherit;font-size:13px;font-weight:900;transition:background .15s,box-shadow .15s}.employeeSave:hover{background:#0f3122;box-shadow:0 6px 16px #153f2d24}.employeeSave:disabled{opacity:.55;cursor:default}.employeeDelete{color:#b42318;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #dc6b6b;border-radius:10px;padding:0 18px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s,opacity .15s}.employeeDelete:hover:not(:disabled){color:#9f1c13;background:#fff1f0;border-color:#c93c37}.employeeDelete:focus-visible{outline-offset:2px;outline:3px solid #b4231829}.employeeDelete:disabled{opacity:.55;cursor:not-allowed}.markingModule{background:var(--surface-color,#fff);border-radius:12px;margin:20px;padding:24px;animation:.3s ease-out fadeIn;box-shadow:0 4px 20px #0000000d}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.markingHeader{border-bottom:1px solid var(--border-color,#eee);justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;display:flex}.markingHeader h2{color:var(--text-primary,#333);margin:0;font-size:1.5rem}.markingTabs{gap:12px;margin-bottom:24px;display:flex}.markingBackRow{margin:16px 0;display:flex}.markingTab{color:#555;cursor:pointer;background:#f0f2f5;border:none;border-radius:20px;padding:8px 16px;font-weight:500;transition:all .2s}.markingTab:hover{background:#e4e6e9}.markingTab.active{color:#fff;background:#10b981;box-shadow:0 2px 8px #10b9814d}.queueGrid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.jobCard{cursor:pointer;background:#fff;border:1px solid #eee;border-radius:12px;padding:20px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.jobCard:hover{border-color:#10b981;transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.jobCard:before{content:"";opacity:0;background:#10b981;width:4px;height:100%;transition:opacity .2s;position:absolute;top:0;left:0}.jobCard:hover:before{opacity:1}.jobHeader{justify-content:space-between;margin-bottom:12px;display:flex}.jobId{color:#666;font-family:monospace;font-weight:600}.jobStatus{border-radius:12px;padding:4px 8px;font-size:.8rem;font-weight:600}.status-waiting{color:#856404;background:#fff3cd}.status-in_progress{color:#004085;background:#cce5ff}.status-completed{color:#155724;background:#d4edda}.jobClient{margin-bottom:4px;font-size:1.1rem;font-weight:600}.jobSku{color:#666;white-space:nowrap;text-overflow:ellipsis;margin-bottom:16px;font-size:.9rem;overflow:hidden}.jobProgress{background:#f0f2f5;border-radius:3px;height:6px;margin-bottom:8px;overflow:hidden}.jobProgressBar{background:#10b981;border-radius:3px;height:100%;transition:width .3s}.jobStats{color:#777;justify-content:space-between;font-size:.85rem;display:flex}.markingModule{margin:16px 0;padding:16px}.markingModule .markingSection{padding:20px}.markingModule .markingField{flex-direction:column;gap:6px;max-width:620px;margin:12px 0;display:flex}.markingModule select{font:inherit;background:#fff;border:1px solid #ccd8d1;border-radius:8px;max-width:100%;padding:8px}.markingModule .markingFormGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.markingModule .jobCard{text-align:left;color:#1e2b25}.markingModule .markingSelection{max-height:240px;padding:12px 0;overflow:auto}.markingModule .markingSelection label{margin:6px;display:block}.markingModule .labelPreviews{gap:16px;padding:16px 0;display:flex;overflow:auto}.markingLabel{color:#000;box-sizing:border-box;background:#fff;border:1px solid #ddd;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;padding:2mm;font:9pt sans-serif;display:flex;overflow:hidden}.markingLabel strong{overflow-wrap:anywhere;text-align:center;max-width:100%;font-size:8pt}.boxLabel{width:58mm;height:40mm}.palletLabel{width:100mm;height:70mm}.markingLabel .barcode{width:100%}.markingLabel svg{width:100%;height:auto;display:block}#markingPrint{display:none}@media print{body:has(#markingPrint)>:not(#markingPrint){display:none!important}#markingPrint{margin:0;padding:0;display:block}#markingPrint .markingLabel{break-after:page;page-break-after:always;border:0}#markingPrint .markingLabel:last-child{break-after:auto;page-break-after:auto}}@media (width<=700px){.markingModule .markingFormGrid{grid-template-columns:1fr}.markingModule{padding:8px}.markingModule .markingSection{padding:12px}}.markingModule .panelHeader{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.markingModule .panelHeader h2,.markingModule .panelHeader h3{margin:0 0 4px;font-size:18px}.fsmBlock{background:#f8fbf9;border:1px solid #dce6df;border-radius:12px;margin:22px 0;padding:20px}.fsmBlock h3{margin-top:0}.fsmDetails{background:#fff;border:1px solid #d3e0d8;border-radius:10px;margin:14px 0;padding:16px}.fsmEditable{align-items:center;gap:8px;display:flex}.fsmEditable input{flex:1;min-width:0}.fsmEditable button{flex-shrink:0}.fsmEditable input[readonly]{background:#f2f6f3}.fsmMissing input{background:#fff9ee;border-color:#cba15e}.fsmDetails small{color:#806329;overflow-wrap:anywhere;margin-bottom:12px;display:block}.fsmInventory p,.fsmDetails .muted{font-size:14px;line-height:1.6}.fsmHint{color:#375846;background:#edf5f0;border-radius:8px;padding:12px}.fsmConfirm{align-items:center;gap:10px;margin:16px 0;display:flex}.fsmInventory .fsmConfirm input{width:18px;min-height:18px}.fsmInventory td{vertical-align:top}@media (width<=700px){.fsmBlock{padding:12px}.fsmEditable{flex-wrap:wrap}}.fsmActControls{flex-wrap:wrap;gap:12px;margin:12px 0;display:flex}.fsmActPaper{color:#111;background:#fff;border:1px solid #b9c9bf;max-width:850px;margin:16px auto;padding:24px;font:14px/1.4 Arial,sans-serif}.fsmActPaper h2{text-align:center;font-size:20px;line-height:1.3}.fsmActPaper h4{margin:14px 0 4px}.fsmActPaper p{margin:8px 0}.fsmActDate,.fsmActSign{justify-content:space-between;gap:24px;display:flex}.fsmActSign>p{width:48%}.fsmActPaper table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:12px}.fsmActPaper th,.fsmActPaper td{white-space:normal;overflow-wrap:anywhere;text-align:left;color:#111;border:1px solid #777;padding:6px}.fsmActPaper th{background:#edf3f0;position:static}.fsmActPaper th:first-child{width:24px}#fsmActPrint{display:none}@media print{body:has(#fsmActPrint)>:not(#fsmActPrint){display:none!important}body:has(#fsmActPrint){background:#fff;margin:0}#fsmActPrint{display:block}#fsmActPrint .fsmActPaper{border:0;max-width:none;margin:0;padding:0;font-size:10pt}#fsmActPrint h2{font-size:14pt}#fsmActPrint table{font-size:8pt}#fsmActPrint thead{display:table-header-group}#fsmActPrint tr,#fsmActPrint .fsmActSign{break-inside:avoid}}.markingBoxDialog{box-sizing:border-box;color:#192a23;background:#fff;border:1px solid #d6e3de;border-radius:18px;width:min(1120px,100vw - 32px);max-width:calc(100vw - 32px);max-height:calc(100dvh - 48px);margin:auto;padding:24px;overflow:auto;box-shadow:0 20px 70px #142d3140}.markingBoxDialog::backdrop{background:#122a2466}.markingBoxDialog .panelHeader{flex-wrap:wrap;gap:16px}.markingBoxDialog .mono{overflow-wrap:anywhere}.fsmFullCode{overflow-wrap:anywhere;font-family:monospace;line-height:1.7}.fsmPrintedNumber{color:#183b2e;white-space:nowrap;background:#fff0a8;border-radius:4px;padding:2px 4px;font-family:monospace;font-weight:800}.registrySearch{color:#56685d;gap:6px;max-width:540px;font-size:13px;display:grid}.clientRegistry input,.clientRegistry select,.clientImportCheck select{color:#213c31;background:#fff;border:1px solid #cad8cf;border-radius:8px;width:100%;min-height:40px;padding:9px 11px}.registryGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.registryGrid label,.clientImportCheck label{color:#50665a;gap:6px;font-size:13px;display:grid}.registryWide{grid-column:span 3}.registryFields{border:0;min-width:0;margin:0;padding:12px 0 18px}.registryFields legend{color:#173d2c;font-weight:700}.registryFields:disabled input{color:#536359;background:#f6f8f7}.registryModal{padding:22px}.registryContracts{border-top:1px solid #dbe5df;margin-top:24px;padding-top:12px}.registryContracts p{color:#6b7972;font-size:13px}.contractRow{border:1px solid #e0e9e3;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin:10px 0;padding:12px;display:flex}.contractRow small{color:#6b7972}.contractBadge{white-space:normal;border-radius:7px;margin-top:4px;padding:5px 9px;font-size:12px;font-weight:600;line-height:1.4;display:inline-block}.contractBadge.good{color:#17623a;background:#e6f4eb}.contractBadge.warn{color:#805510;background:#fff2d9}.contractBadge.bad{color:#983c32;background:#fbe9e7}.contractBadge.neutral{color:#56675d;background:#eef1ef}.clientImportCheck{background:#f6faf7;border:1px solid #dce6df;border-radius:10px;gap:10px;margin:14px 0;padding:14px;display:grid}.clientImportCheck small{color:#65766a}@media (width<=800px){.registryGrid{grid-template-columns:1fr}.registryWide{grid-column:span 1}}.requisitesReadiness{color:#775322;background:#fff9ed;border:1px solid #ead5a8;border-radius:12px;margin:18px 0;padding:14px 18px}.requisitesReadiness p,.clientFileImport p{margin:8px 0;font-size:13px;line-height:1.55}.registryGrid .needsRequisite input{background:#fffcf3;border-color:#d8b36d}.clientFileImport{background:#f7fbf8;border:1px solid #d9e6df;border-radius:12px;padding:16px}.clientFileImport input[hidden]{display:none}.clientFileImport p{color:#536b5c}.clientFileImport .importWarning{color:#855b18}.importPreview{gap:10px;max-height:420px;margin:14px 0;display:grid;overflow:auto}.importField{background:#fff;border:1px solid #e0e9e3;border-radius:8px;grid-template-columns:minmax(160px,1fr) minmax(0,2fr);gap:12px;padding:12px;display:grid}.importChoice{align-items:flex-start;gap:8px;font-size:13px;display:flex}.clientFileImport .importChoice input{accent-color:#21563c;width:18px;height:18px;min-height:18px;margin:0}.importValue{gap:5px;min-width:0;display:grid}.importValue span,.importValue small{color:#65796b;overflow-wrap:anywhere;font-size:12px}@media (width<=700px){.importField{grid-template-columns:1fr}}.contractRow{flex-wrap:wrap;align-items:flex-start}.contractRow>div{overflow-wrap:anywhere;flex:240px;min-width:0}.contractRow select{max-width:100%;margin:5px 0 9px}:root{color:#18221d;font-synthesis:none;background:#f4f7f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{color:#18221d;background:#f4f7f5;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}.appShell{width:min(1600px,100% - 36px);margin:0 auto;padding:24px 0 60px}.mainNavContainer{border-bottom:1px solid #dde5e0;flex-wrap:wrap;gap:10px;margin-bottom:24px;padding:16px 20px;display:flex}.responsiveFlex{gap:24px;display:flex}@media (width<=1024px){.responsiveFlex{flex-direction:column}.markingModule .headerActions{width:100%}.markingModule .headerActions button{flex:1}}.topbar{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.topbar h1{letter-spacing:-.03em;margin:5px 0 4px;font-size:28px}.topbar p,.panelHeader p{color:#718077;margin:0;font-size:14px}.headerActions{flex-wrap:wrap;gap:10px;display:flex}.primaryButton,.secondaryButton,.backButton,.iconButton{border:1px solid #0000;border-radius:10px;padding:10px 16px;font-weight:700;transition:all .15s}.primaryButton{color:#fff;background:#173d2c}.primaryButton:hover{background:#0f2d20}.primaryButton:disabled{opacity:.55;cursor:default}.secondaryButton{color:#213c31;background:#fff;border-color:#ccd8d1}.secondaryButton:hover{background:#f8faf9;border-color:#9fb1a7}.backButton{color:#496258;background:0 0;padding-left:0}.iconButton{color:#64736b;background:0 0;padding:3px 11px;font-size:25px}.smallButton{padding:7px 11px;font-size:12px}.metricsGrid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.batchMetrics{grid-template-columns:repeat(5,minmax(0,1fr))}.metric{background:#fff;border:1px solid #dde5e0;border-radius:14px;flex-direction:column;justify-content:space-between;min-height:112px;padding:16px;display:flex;box-shadow:0 2px 8px #1c342808}.metric span{color:#6b7972;font-size:13px}.metric strong{letter-spacing:-.025em;font-size:23px}.metric small{color:#8a9690}.metricAccent{background:#edf7f1;border-color:#bed9c9}.panel{background:#fff;border:1px solid #dde5e0;border-radius:14px;margin-top:16px;overflow:hidden;box-shadow:0 2px 10px #19302506}.panelHeader{border-bottom:1px solid #e7ece9;padding:16px 18px 13px}.panelHeader h2{margin:0 0 4px;font-size:18px}.tableScroll{overflow:auto}.goodsTableScroll{max-height:70dvh}.goodsTableScroll .goodsTable{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;font-size:clamp(10px,.8vw,12px)}.goodsTableScroll .goodsTable th,.goodsTableScroll .goodsTable td{white-space:normal;overflow-wrap:anywhere;text-align:center;vertical-align:middle;padding:10px 6px;line-height:1.4}.goodsTableScroll .goodsTable th{z-index:2;text-transform:none;letter-spacing:0;color:#50665a;background:#fafcfb;font-size:clamp(10px,.78vw,12px);font-weight:700;position:sticky;top:0;box-shadow:0 1px #e7ece9}.goodsTableScroll .goodsUnit{color:#85938b;font-weight:500}.goodsTableScroll .goodsTable td{font-variant-numeric:tabular-nums}.goodsTableScroll .goodsTable th:nth-child(2),.goodsTableScroll .goodsTable .productName{text-align:left;min-width:0;max-width:none}.goodsTableScroll .productName .backButton{text-align:left;width:100%;font-size:inherit;white-space:normal;overflow-wrap:anywhere;padding:0}.goodsTableScroll .goodsTable .smallButton{max-width:100%;font-size:inherit;white-space:normal;overflow-wrap:anywhere;border-radius:6px;padding:6px 4px}.goodsTableScroll .goodsTable th:nth-child(11),.goodsTableScroll .goodsTable td:nth-child(11){border-left:1px solid #e0e9e3}.goodsTableScroll .goodsTable th:nth-child(n+11){background:#edf5ef}.goodsTableScroll:focus-visible{outline-offset:-2px;outline:2px solid #19623e}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;white-space:nowrap;text-transform:uppercase;letter-spacing:.035em;color:#718078;background:#fafcfb;border-bottom:1px solid #e7ece9;padding:11px 13px;font-size:11px}td{vertical-align:top;border-bottom:1px solid #eef2ef;padding:12px 13px}tbody tr:last-child td{border-bottom:0}.clickableRow:hover{background:#f7faf8}.bold{font-weight:750}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.productName{white-space:normal;min-width:300px;max-width:560px;line-height:1.4}.zeroRow{opacity:.55;background:#fafafa}.emptyCell,.emptyBlock{text-align:center;color:#839087;padding:30px}.status{white-space:nowrap;border-radius:99px;padding:5px 8px;font-size:11px;font-weight:700}.status.active{color:#19623e;background:#e9f6ee}.status.partial{color:#75560c;background:#fff5d6}.status.closed{color:#59635e;background:#eef1ef}.batchHeader{grid-template-columns:2fr 1fr 1fr .7fr;gap:10px;margin-bottom:14px;display:grid}.batchHeader>div{background:#fff;border:1px solid #dde5e0;border-radius:12px;padding:13px 15px}.batchHeader span{color:#748179;margin-bottom:5px;font-size:12px;display:block}.batchHeader strong{font-size:14px}.releaseCards{gap:8px;padding:12px;display:grid}.releaseCard{border:1px solid #e3e9e5;border-radius:10px;grid-template-columns:2fr 1fr 1fr 1fr auto;align-items:center;gap:14px;padding:11px 12px;display:grid}.releaseCard>div{flex-direction:column;gap:2px;display:flex}.releaseCard span{color:#7d8982;font-size:11px}.releaseCard strong,.releaseCard b{font-size:13px}.modalBackdrop{z-index:1000;background:#0e19137a;justify-content:center;align-items:flex-start;padding:28px;display:flex;position:fixed;inset:0;overflow:auto}.modal{background:#fff;border-radius:16px;width:min(680px,100%);padding:18px;box-shadow:0 22px 60px #0000003d}.modalWide{width:min(1500px,100%)}.modalHeader{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.modalHeader h2{margin:0;font-size:21px}.importChoice{background:#f5f8f6;border:1px solid #e0e7e3;border-radius:11px;gap:9px;margin-bottom:10px;padding:12px;display:flex}.sourceLine{color:#6c7972;margin:8px 2px 13px;font-size:12px}.errorBox,.warningBox{border-radius:9px;margin:8px 0;padding:10px 12px;font-size:13px}.errorBox{color:#822e2e;background:#fff0f0;border:1px solid #f0caca}.warningBox{color:#74550e;background:#fff8dd;border:1px solid #eadba0}.editorGrid{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px;display:grid}.editorGrid label{color:#66746c;flex-direction:column;gap:5px;font-size:12px;font-weight:650;display:flex}.editorGrid .span2{grid-column:span 2}input,textarea{color:#1e2b25;background:#fff;border:1px solid #ccd8d1;border-radius:8px;outline:none;padding:8px 9px}input:focus,textarea:focus{border-color:#6b9a80;box-shadow:0 0 0 3px #4f87671a}textarea{resize:vertical;min-height:58px;line-height:1.35}.previewTotals{color:#315343;background:#edf6f1;border-radius:9px;flex-wrap:wrap;gap:18px;margin-bottom:10px;padding:10px 12px;font-size:13px;display:flex}.editorTableWrap{border:1px solid #dde5e0;border-radius:10px;max-height:55vh;overflow:auto}.editorTable th{z-index:2;position:sticky;top:0}.editorTable td{padding:6px}.editorTable input,.editorTable textarea{width:100%;min-width:100px;font-size:12px}.editorTable textarea{min-width:330px}.editorTable .tinyInput{width:68px;min-width:58px}.editorTable .numInput{width:95px;min-width:84px}.dangerLink{color:#a23e3e;background:0 0;border:0;padding:5px;font-size:11px}.editorFooter{justify-content:space-between;gap:10px;margin-top:13px;display:flex}.loading{text-align:center;color:#748078;padding:80px}@media (width<=1100px){.metricsGrid,.batchMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}.batchHeader,.editorGrid{grid-template-columns:repeat(2,1fr)}.releaseCard{grid-template-columns:1fr 1fr}}@media (width<=650px){.appShell{width:min(100% - 18px,1600px);padding-top:12px}.topbar{flex-direction:column}.metricsGrid,.batchMetrics,.batchHeader,.editorGrid{grid-template-columns:1fr}.editorGrid .span2{grid-column:auto}.importChoice{flex-direction:column}}*{box-sizing:border-box}.authPage{color:#18221d;background:radial-gradient(circle at 15% 10%,#29704c17,#0000 34%),#f4f7f5;place-items:center;min-height:100vh;padding:24px;display:grid}.authCard{background:#fff;border:1px solid #dce5df;border-radius:18px;width:100%;max-width:460px;padding:34px;box-shadow:0 22px 60px #1930251a}.authBrand{align-items:center;gap:12px;margin-bottom:34px;display:flex}.authLogo{color:#fff;background:#1fbd6b;border-radius:12px;flex:0 0 46px;place-items:center;width:46px;height:46px;font-size:26px;font-weight:900;display:grid}.authBrandName{letter-spacing:.02em;font-size:19px;font-weight:900}.authBrandSub{color:#668075;letter-spacing:.05em;margin-top:2px;font-size:11px}.authHeading h1{margin:0 0 7px;font-size:27px;line-height:1.15}.authHeading p{color:#708078;margin:0 0 26px;font-size:14px}.authForm{gap:18px;display:grid}.authForm label{color:#54675d;gap:7px;width:100%;font-size:13px;font-weight:700;display:grid}.authForm input{color:#18221d;background:#fff;border:1px solid #cdd9d2;border-radius:10px;outline:none;width:100%;min-width:0;min-height:48px;padding:11px 13px;font-size:14px;display:block}.authForm input:focus{border-color:#4d8b6c;box-shadow:0 0 0 3px #4d8b6c1f}.passwordField{width:100%;min-width:0;position:relative}.passwordField input{width:100%;padding-right:96px}.passwordToggle{color:#416552;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 8px;font-size:12px;font-weight:800;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.passwordToggle:hover{background:#eef5f1}.authSubmit{color:#fff;cursor:pointer;background:#173d2c;border:0;border-radius:10px;width:100%;min-height:48px;font-size:15px;font-weight:800}.authSubmit:hover{background:#0f2d20}.authSubmit:disabled{opacity:.6;cursor:default}.authError{color:#9d3232;background:#fff1f1;border:1px solid #f0c8c8;border-radius:9px;padding:11px 12px;font-size:13px}.authFootnote{color:#87938d;text-align:center;border-top:1px solid #edf1ee;margin-top:24px;padding-top:20px;font-size:12px}.authLoading{color:#607068;font-weight:700}.crmSessionBar{background:#fffffff7;border:1px solid #dbe5df;border-radius:12px;align-items:center;gap:14px;width:fit-content;max-width:calc(100% - 36px);margin:44px 18px 0 auto;padding:8px 10px 8px 12px;display:flex;position:static;box-shadow:0 8px 24px #1631241a}.crmSessionUser{align-items:center;gap:9px;display:flex}.crmSessionDot{background:#1fbd6b;border-radius:50%;flex:0 0 9px;width:9px;height:9px}.crmSessionTitle{color:#8a9890;text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.crmSessionEmail{color:#27362f;white-space:nowrap;text-overflow:ellipsis;max-width:230px;font-size:12px;font-weight:800;overflow:hidden}.crmSessionBar button{color:#fff;cursor:pointer;background:#173d2c;border:0;border-radius:8px;min-height:34px;padding:0 13px;font-size:12px;font-weight:800}.crmSessionBar button:hover{background:#0f2d20}.crmSessionBar button:disabled{opacity:.6;cursor:default}@media (width<=1100px){.crmSessionBar{max-width:calc(100% - 24px);margin-right:12px}}@media (width<=520px){.authPage{padding:12px}.authCard{border-radius:14px;padding:24px 20px}.authHeading h1{font-size:24px}.crmSessionBar{justify-content:space-between;margin-left:auto}.crmSessionEmail{max-width:130px}}
