*{font-family:NotoSans;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{height:100vh;font-family:Noto Sans,sans-serif;color:#2c3e50}*{scrollbar-width:10px;scrollbar-color:#454545 #edf1f5}::-webkit-scrollbar{width:16px}::-webkit-scrollbar-thumb{background-color:#454545;border-radius:10px;border:1px solid #fff}html{overflow:auto!important}.home{margin-left:240px;width:calc(100% - 240px);max-width:calc(100% - 240px);background-color:#edf1f5;box-shadow:1px 0 20px rgba(0,0,0,.08)}.home,.homeview{height:calc(max(100%, 100vh))}:root{--ui-text:#1f2329;--ui-text-secondary:#475467;--ui-text-muted:#596579;--ui-primary:#0958d9;--ui-primary-hover:#003eb3;--ui-primary-soft:#e6f4ff;--ui-success:#166534;--ui-success-soft:#ecfdf3;--ui-warning:#854d0e;--ui-warning-soft:#fff7e6;--ui-danger:#b42318;--ui-danger-soft:#fef3f2;--ui-surface:#fff;--ui-canvas:#f4f6f8;--ui-surface-subtle:#eef2f6;--ui-border:#cbd2dc;--ui-control-border:#7c8798;--ui-disabled-text:#596579;--ui-disabled-bg:#eaecf0}.auth-page,.factory-dialog{--factory-ink:var(--ui-text);--factory-muted:var(--ui-text-secondary);--factory-line:var(--ui-border);--factory-blue:var(--ui-primary);--factory-bg:var(--ui-canvas);color:var(--factory-ink);font-family:Noto Sans KR,Noto Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.6}.auth-page *,.factory-dialog *{box-sizing:border-box;font-family:inherit}.auth-page h1,.factory-dialog h2{color:var(--factory-ink);font-family:inherit;font-weight:700;line-height:1.4;margin:0;letter-spacing:-.035em}.auth-page h1{font-size:27px}.factory-dialog h2{font-size:17px}.auth-page p,.factory-dialog p{margin:0}.auth-page button,.factory-dialog button{font-family:inherit;cursor:pointer;letter-spacing:-.02em}.auth-page a,.factory-dialog a{text-decoration:none}.auth-page :focus-visible,.factory-dialog :focus-visible{outline:3px solid var(--ui-primary);outline-offset:3px}.auth-page button:disabled,.factory-dialog button:disabled{cursor:not-allowed;opacity:1;color:var(--ui-disabled-text);background:var(--ui-disabled-bg)}.auth-page .muted,.factory-dialog .muted{color:var(--factory-muted);font-size:13px;font-weight:400}.auth-page .eyebrow,.factory-dialog .eyebrow{color:var(--ui-text-secondary);font-weight:700;letter-spacing:.14em;margin-bottom:7px;font-size:12px}.auth-page .field,.factory-dialog .field{display:flex;flex-direction:column;gap:7px;font-weight:600;margin:0 0 17px;min-width:0;font-size:13px;color:var(--ui-text)}.auth-page input,.factory-dialog input,.factory-dialog select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:100%;min-width:0;height:46px;padding:10px 12px;border:1px solid #dce3eb;border-radius:7px;background:#fff;font:inherit;font-size:14px;font-weight:400;outline:none;box-shadow:none;border-color:var(--ui-control-border);color:var(--ui-text)}.auth-page input::-moz-placeholder,.factory-dialog input::-moz-placeholder{font-size:13px;color:var(--ui-text-muted)}.auth-page input::placeholder,.factory-dialog input::placeholder{font-size:13px;color:var(--ui-text-muted)}.auth-page input:focus,.factory-dialog input:focus{border-color:var(--ui-primary);box-shadow:0 0 0 3px #356bdb0b}.filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.auth-page .factory-button,.factory-dialog .factory-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dce3eb;border-radius:7px;background:#fff;color:var(--ui-text-secondary);min-height:45px;padding:10px 15px;font-size:13px;font-weight:600;white-space:nowrap}.factory-dialog .factory-button:hover{background:#f4f7fb;border-color:var(--ui-primary)}.auth-page .factory-button.primary,.factory-dialog .factory-button.primary{background:var(--factory-blue);border-color:var(--factory-blue);color:var(--ui-surface)}.auth-page .factory-button.primary:hover,.factory-dialog .factory-button.primary:hover{background:var(--ui-primary-hover)}.auth-page .notice,.factory-dialog .notice{margin:14px 0;padding:12px 14px;border:1px solid #d8e5f5;border-radius:7px;font-size:12px;overflow-wrap:anywhere;color:var(--ui-primary);background:var(--ui-primary-soft)}.auth-page .notice.error,.factory-dialog .notice.error{border-color:#f5ded5;color:var(--ui-danger);background:var(--ui-danger-soft)}.factory-dialog{position:fixed;inset:0;z-index:1100;background:#1e2b4266;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto;overscroll-behavior:contain}.dialog-panel{width:min(100%,540px);max-height:calc(100dvh - 48px);overflow-y:auto;padding:25px;border-radius:16px;background:#fff;box-shadow:0 24px 80px #14213924}.dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:23px;gap:16px}.factory-dialog .icon-button{display:inline-flex;flex-shrink:0;border:0;border-radius:6px;width:44px;height:44px;background:transparent;font-size:22px;color:var(--ui-text-secondary)}.auth-page,.factory-dialog .icon-button{align-items:center;justify-content:center}.auth-page{min-height:100dvh;display:flex;flex-direction:column;padding:40px 20px;background:#f4f6f8}.auth-card{width:100%;max-width:420px;border:1px solid #e2e7ed;border-radius:16px;background:#fff;padding:38px;box-shadow:0 10px 40px #263d5910}.auth-logo{display:block;width:106px;height:40px;-o-object-fit:contain;object-fit:contain;margin-bottom:32px}.auth-card>.muted{margin-top:10px;font-size:14px}.auth-card form{margin-top:30px}.auth-page .field{margin-bottom:20px}.auth-page .field input{height:48px}.password-field{position:relative}.auth-page .password-field input{padding-right:48px}.password-toggle{position:absolute;right:3px;top:3px;width:42px;height:42px;border:0;border-radius:6px;background:transparent;font-size:19px;color:var(--ui-text-secondary)}.auth-submit{width:100%;margin-top:5px;justify-content:space-between!important;padding-left:18px!important;padding-right:16px!important;min-height:49px!important}.auth-page .auth-register{margin-top:26px;text-align:center;color:var(--ui-text-secondary);font-size:13px}.auth-register a{margin-left:5px;font-weight:600;color:var(--ui-primary)}.auth-page .auth-footer{margin-top:24px;letter-spacing:.03em;color:var(--ui-text-secondary);font-size:12px}.loading-spinner{width:22px;height:22px;border:2px solid #e2eaf4;border-top-color:#7296c6;border-radius:50%;animation:factory-spin .8s linear infinite}@keyframes factory-spin{to{transform:rotate(1turn)}}@media (max-width:650px){.filter-grid{gap:11px}.factory-dialog input{font-size:16px}.factory-dialog{padding:16px}.dialog-panel{max-height:calc(100dvh - 32px);padding:23px 20px}.auth-card{padding:30px 25px}}@media (prefers-reduced-motion:reduce){.auth-page *,.factory-dialog *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.desktop-factory{--desk-ink:var(--ui-text);--desk-muted:var(--ui-text-secondary);--desk-border:var(--ui-border);--desk-blue:var(--ui-primary);color:var(--desk-ink);min-height:100dvh;font:14px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans KR,Noto Sans,sans-serif;background:var(--ui-canvas)}.desktop-factory *,.stock-action-dialog *{box-sizing:border-box;font-family:inherit}.desktop-factory button,.desktop-factory input,.desktop-factory select{font:inherit}.desktop-factory button{cursor:pointer}.desktop-factory button:disabled{cursor:not-allowed}.desktop-factory a{text-decoration:none}.desktop-factory :focus-visible{outline:3px solid var(--ui-primary);outline-offset:3px}.factory-sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:220px;display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--desk-border);overflow-y:auto}.sidebar-brand{display:flex;height:83px;flex-shrink:0;align-items:center;gap:10px;margin:0 22px;border-bottom:1px solid #edf0f5}.sidebar-brand img{width:103px;height:37px;-o-object-fit:contain;object-fit:contain}.sidebar-brand>span{padding-left:10px;border-left:1px solid #e3e9f0;color:var(--ui-text-secondary);font-size:8px;font-weight:650;letter-spacing:.13em}.sidebar-navigation{flex:1;padding:22px 13px;min-height:0;overflow-y:auto}.sidebar-main-link,.sidebar-product-link{position:relative;display:flex;align-items:center;gap:11px;height:41px;padding:0 13px;border-radius:6px;color:var(--ui-text-secondary);font-size:14px}.sidebar-main-link>.mdi{font-size:19px}.sidebar-main-link:hover,.sidebar-product-link:hover{color:var(--ui-text-secondary);background:#f5f8fd}.sidebar-main-link.selected,.sidebar-product-link.selected{font-weight:650;color:var(--ui-primary);background:var(--ui-primary-soft)}.sidebar-product-link.selected:before{content:"";position:absolute;left:0;top:11px;bottom:11px;width:3px;border-radius:3px;background:var(--ui-primary)}.sidebar-section{margin-top:29px}.sidebar-section h2{display:flex;align-items:center;justify-content:space-between;margin:0 13px 11px;font-weight:600;letter-spacing:.05em;font-size:12px;color:var(--ui-text-secondary)}.sidebar-section h2 .mdi{font-size:15px;color:var(--ui-text-secondary)}.sidebar-product-link{margin:3px 0}.sidebar-product-link>.mdi:first-child{font-size:18px;color:var(--ui-text-secondary)}.sidebar-product-link.selected>.mdi{color:var(--ui-text-secondary)}.sidebar-product-link>.mdi:last-child:not(:first-child){margin-left:auto;font-size:15px;color:var(--ui-text-secondary)}.product-nav-mark{width:7px;height:7px;border:1.5px solid #b4c1d2;border-radius:2px;margin:0 5px 0 4px}.sidebar-product-link.selected .product-nav-mark{border-color:#6385c6;background:#e7efff}.active-nav-dot{width:5px;height:5px;border-radius:50%;margin-left:auto;background:var(--ui-primary)}.sidebar-footer{padding:17px 20px 19px;border-top:1px solid var(--desk-border);background:#fcfdff;flex-shrink:0}.sidebar-account{display:flex;align-items:center;gap:9px}.sidebar-avatar{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:31px;height:31px;border:1px solid #e4eaf3;border-radius:8px;font-weight:700;color:var(--ui-primary);background:var(--ui-primary-soft);font-size:12px}.sidebar-account>div{display:flex;flex:1;flex-direction:column;min-width:0;gap:1px}.sidebar-account strong{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--ui-text)}.sidebar-account>div>span{color:var(--ui-text-secondary);font-size:12px}.sidebar-logout{display:flex;justify-content:center;align-items:center;width:29px;height:31px;border:0;border-radius:5px;background:transparent;color:var(--ui-text-secondary);font-size:16px}.sidebar-logout:hover{color:var(--ui-text-secondary);background:#edf2f9}.sidebar-session{justify-content:space-between;margin-top:14px;color:var(--ui-text-secondary);font-size:12px}.sidebar-session,.sidebar-session>span{display:flex;align-items:center;gap:5px}.sidebar-session>span{font-variant-numeric:tabular-nums}.session-indicator{width:5px;height:5px;background:#88b7a1;border-radius:50%}.sidebar-session button{border:0;border-radius:4px;background:none;padding:4px 0 4px 5px;font-size:12px;color:var(--ui-primary);font-weight:600}.sidebar-error{font-size:10px;margin-top:9px;color:var(--ui-danger)}.sidebar-bottom-note{display:flex;flex-direction:column;gap:2px;margin-top:25px;color:var(--ui-text-secondary);letter-spacing:.07em;font-size:11px}.sidebar-bottom-note span{letter-spacing:0;color:var(--ui-text-secondary);font-size:11px}.desktop-main{margin-left:220px;min-width:0;min-height:100dvh}.desktop-topbar{height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 32px;border-bottom:1px solid var(--desk-border);background:#fff}.desktop-topbar-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.topbar-apk-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:35px;padding:7px 12px;border:1px solid var(--ui-primary);border-radius:6px;background:var(--ui-primary);color:#fff;font-size:13px;font-weight:650;white-space:nowrap;text-decoration:none}.topbar-apk-link:hover{background:var(--ui-primary-hover);border-color:var(--ui-primary-hover);color:#fff}.topbar-apk-link:focus-visible{outline:2px solid var(--ui-primary);outline-offset:3px}.desktop-breadcrumb{display:flex;align-items:center;gap:11px;color:var(--ui-text-secondary);white-space:nowrap;font-size:13px}.desktop-breadcrumb>.mdi:first-child{font-size:16px;color:var(--ui-text-secondary)}.desktop-breadcrumb>.mdi{font-size:13px}.desktop-breadcrumb a,.desktop-breadcrumb strong,.desktop-breadcrumb>.mdi{color:var(--ui-text-secondary)}.desktop-breadcrumb strong{font-weight:550}.workdate-control{display:flex;align-items:center;gap:3px;padding:3px 4px 3px 11px;border:1px solid #e8edf3;border-radius:6px;color:var(--ui-text-secondary);font-size:12px;border-color:var(--ui-control-border)}.workdate-control>span{padding-right:7px}.workdate-control input{border:0;outline:0;font-variant-numeric:tabular-nums;background:transparent;font-size:13px;color:var(--ui-text);width:128px}.workdate-control button{display:flex;align-items:center;justify-content:center;border:0;background:none;width:25px;height:25px;color:var(--ui-text-secondary)}.desktop-page{padding:31px 32px 30px;max-width:1920px;margin:0 auto}.inventory-page h1,.inventory-page h2,.inventory-page h3{font-family:inherit;color:var(--desk-ink);font-weight:650;margin:0;letter-spacing:-.035em}.inventory-page p{margin:0}.inventory-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.inventory-kicker{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:var(--ui-text-secondary);font-weight:600;letter-spacing:.12em;font-size:11px}.inventory-kicker>.mdi{font-size:15px;color:var(--ui-text-secondary)}.kicker-divider{width:1px;height:9px;background:#d4dde9;margin:0 2px}.inventory-heading h1{font-size:26px;line-height:1.4}.inventory-heading p{color:var(--ui-text-secondary);margin-top:8px;font-size:14px}.inventory-heading-actions{display:flex;align-items:center;gap:8px;padding-top:14px}.desk-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:37px;padding:8px 13px;border:1px solid #dfe5ee;border-radius:6px;background:#fff;white-space:nowrap;line-height:1.4;cursor:pointer;font-size:14px!important;border-color:var(--ui-control-border);color:var(--ui-text-secondary);font-weight:600!important}.desk-button .mdi{font-size:16px;color:currentColor}.desk-button:hover{background:#f9fbfe;border-color:var(--ui-primary);color:var(--ui-text-secondary)}.desk-button.primary{background:var(--ui-primary);border-color:var(--ui-primary)}.desk-button.primary,.desk-button.primary .mdi{color:var(--ui-surface)}.desk-button.primary:hover{background:var(--ui-primary-hover);border-color:var(--ui-primary-hover)}.desk-button.small{padding:7px 10px;font-size:13px!important;min-height:36px}.desk-button:disabled{cursor:not-allowed;opacity:1;background:var(--ui-disabled-bg);border-color:#98a2b3;color:var(--ui-disabled-text)}.inventory-overview{display:flex;align-items:center;gap:26px;min-height:36px;padding:0 1px;margin-bottom:16px}.inventory-overview>div{display:flex;align-items:baseline;gap:8px;white-space:nowrap}.inventory-overview>div>span:not(.overview-dot){color:var(--ui-text-secondary);font-size:13px}.inventory-overview>div>strong{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ui-text)}.inventory-overview>div:first-child>strong{font-size:19px;color:var(--ui-text)}.inventory-overview small{font-weight:400;color:var(--ui-text-secondary);margin-left:3px;font-size:12px}.overview-divider{width:1px;height:17px;background:#dfe5ed}.overview-dot{width:5px;height:5px;border-radius:50%;display:inline-flex;align-self:center;background:#9aadc9;margin-right:-3px}.overview-dot.incoming{background:var(--ui-success)}.overview-dot.outgoing{background:var(--ui-warning)}.overview-dot.sold{background:var(--ui-primary)}.inventory-overview .overview-hint{margin-left:auto;color:var(--ui-text-secondary);white-space:nowrap;font-size:12px}.inventory-filter{background:#fff;border:1px solid var(--desk-border);border-radius:9px;padding:14px 18px;margin-bottom:18px}.filter-primary-row{display:flex;align-items:center;gap:14px}.desk-search{display:flex;flex:1 1 280px;max-width:390px;align-items:center;gap:8px;min-width:200px;min-height:37px;padding:0 11px;border:1px solid #e4e9f1;border-radius:6px;border-color:var(--ui-control-border);background:var(--ui-surface)}.desk-search>.mdi{font-size:18px;color:var(--ui-text-secondary)}.desk-search input{flex:1;min-width:0;width:100%;height:35px;padding:0;border:0;outline:none;background:transparent;font-size:14px;color:var(--ui-text)}.desk-search input::-webkit-search-cancel-button{display:none}.desk-search input::-moz-placeholder{color:var(--ui-text-muted)}.desk-search input::placeholder{color:var(--ui-text-muted)}.desk-search>button{display:flex;justify-content:center;align-items:center;width:22px;height:26px;border:0;background:none;color:var(--ui-text-secondary)}.search-shortcut{border:1px solid #e4eaf3;background:#fff;border-radius:3px;padding:1px 4px;font-size:11px;color:var(--ui-text-secondary)}.filter-selects{display:flex;align-items:center;gap:9px;margin-left:auto}.filter-selects>label{display:flex;align-items:center;min-height:37px;padding:0 10px;gap:6px;background:#fff;border:1px solid #e3e9f1;border-radius:6px;border-color:var(--ui-control-border)}.filter-selects>label>.mdi{font-size:16px;color:var(--ui-text-secondary)}.filter-selects select{border:0;height:32px;min-width:85px;padding-right:5px;outline:none;background:#fff;font-size:13px;color:var(--ui-text)}.filter-reset{gap:3px;height:32px;border:0;background:none;padding:0 3px 0 5px;font-size:13px!important;color:var(--ui-primary)}.custom-date-row,.filter-reset{display:flex;align-items:center}.custom-date-row{gap:11px;border-top:1px solid #eef1f6;margin-top:14px;padding-top:14px;color:var(--ui-text-secondary);font-size:13px}.custom-date-row>input{border:1px solid #dfe6f0;height:34px;border-radius:5px;padding:5px 9px;background:#fff;font-size:13px;border-color:var(--ui-control-border);color:var(--ui-text)}.inventory-table-card{border:1px solid var(--desk-border);border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 2px 5px #1d365703}.inventory-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;min-height:62px;border-bottom:1px solid #e9edf3}.table-title{display:flex;align-items:center;gap:8px;flex-shrink:0}.table-title h2{letter-spacing:-.02em;font-size:15px}.table-count{border:1px solid #e5edfa;padding:1px 6px;line-height:1.6;border-radius:4px;font-variant-numeric:tabular-nums;color:var(--ui-primary);background:var(--ui-primary-soft);font-size:12px;font-weight:600}.table-description{color:var(--ui-text-secondary);margin-left:2px;font-size:12px}.clear-selection{border:0;background:none;padding:4px;font-size:13px!important;color:var(--ui-primary)}.table-tools{display:flex;align-items:center;gap:7px}.inventory-view-toggle{display:flex;padding:3px;gap:2px;border:1px solid #e7ecf3;border-radius:6px;background:#f8fafd;border-color:var(--ui-control-border)}.inventory-view-toggle button{display:flex;align-items:center;gap:4px;min-height:25px;padding:3px 7px;border:0;border-radius:3px;background:transparent;color:var(--ui-text-secondary);font-size:12px}.inventory-view-toggle button .mdi{font-size:14px}.inventory-view-toggle button.active{background:#fff;box-shadow:0 1px 3px #35567d13;color:var(--ui-primary);font-weight:600}.toolbar-divider{width:1px;height:21px;background:#e7ecf3;margin:0 4px}.inventory-table-scroll{overflow-x:auto}.inventory-table{width:100%;min-width:1070px;border-collapse:collapse;text-align:left;table-layout:auto}.inventory-table th{border-bottom:1px solid #e8edf4;height:40px;padding:10px 13px;white-space:nowrap;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:13px;font-weight:600}.inventory-table th>button{display:flex;align-items:center;gap:6px;padding:0;background:none;border:0;color:inherit;font-size:inherit}.inventory-table th .mdi{font-size:12px;color:var(--ui-text-secondary)}.inventory-table td{height:53px;padding:10px 13px;border-bottom:1px solid #edf0f5;white-space:nowrap;font-size:14px;color:var(--ui-text)}.inventory-table tbody tr:last-child td{border-bottom:0}.inventory-table tbody tr:hover{background:#f0f5ff}.inventory-table tbody tr.row-selected{background:var(--ui-primary-soft)}.inventory-table .check-column{width:44px;min-width:44px;text-align:center;padding:10px 7px 10px 15px}.inventory-table input[type=checkbox]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:14px;height:14px;vertical-align:middle;accent-color:#527cd2;cursor:pointer}.inventory-table .serial-column{min-width:167px}.inventory-table .barcode-column{max-width:180px}.serial-link{border:0;background:transparent;padding:5px 0;font-weight:600!important;text-align:left;font-variant-numeric:tabular-nums;font-size:14px!important;color:var(--ui-text)}.serial-link:hover{text-decoration:underline;text-underline-offset:3px;color:var(--ui-primary)}.barcode-copy{display:flex;align-items:center;gap:6px;width:100%;border:0;background:transparent;padding:4px 0;text-align:left;font-size:13px!important;color:var(--ui-text-secondary)}.barcode-copy>span:first-child{max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.barcode-copy .mdi{opacity:0;color:var(--ui-text-secondary);font-size:11px}.barcode-copy:focus-visible .mdi,.barcode-copy:hover .mdi{opacity:1}.inventory-table .table-secondary,.table-dash{color:var(--ui-text-secondary)}.tabular{font-variant-numeric:tabular-nums}.inventory-table .place-column{max-width:200px}.place-value{display:block;max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;color:var(--ui-text)}.inventory-status{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:4px;background:#f3f5f8;color:var(--ui-text-secondary);line-height:1.5;font-size:12px;font-weight:600}.inventory-status>i{display:block;width:4px;height:4px;background:currentColor;border-radius:50%;opacity:1}.inventory-status.incoming{color:var(--ui-success);background:var(--ui-success-soft)}.inventory-status.outgoing{color:var(--ui-warning);background:var(--ui-warning-soft)}.inventory-status.sold{color:var(--ui-primary);background:var(--ui-primary-soft)}.inventory-table .mode-column{min-width:97px}.mode-switch{display:inline-flex;align-items:center;gap:5px;border:0;background:none;padding:5px 0;font-size:12px!important;color:var(--ui-text-secondary)}.switch-track{display:flex;align-items:center;width:22px;height:13px;border:1px solid #dce3ec;border-radius:10px;padding:1px;background:#667085;border-color:#667085}.switch-track>span{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #3b52612e}.mode-switch.on{color:var(--ui-primary)}.mode-switch.on .switch-track{justify-content:flex-end;background:var(--ui-primary);border-color:var(--ui-primary)}.mode-switch:disabled{opacity:1}.detail-column{width:67px}.row-detail{display:inline-flex;align-items:center;gap:2px;border:0;background:none;padding:6px 2px;color:var(--ui-primary);font-size:13px!important}.row-detail:hover{color:var(--ui-primary-hover)}.row-detail .mdi{font-size:14px;color:currentColor}.inventory-pagination{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:58px;padding:11px 19px;border-top:1px solid #e8edf4;color:var(--ui-text-secondary);font-size:13px}.inventory-pagination strong{color:var(--ui-text-secondary);font-weight:500;font-variant-numeric:tabular-nums}.pagination-controls{display:flex;align-items:center;gap:24px}.pagination-controls>label{display:flex;align-items:center;gap:8px;color:var(--ui-text-secondary);font-size:12px}.pagination-controls select{height:28px;padding:2px 7px;border:1px solid #e4eaf2;border-radius:4px;color:var(--ui-text-secondary);background:#fff;font-size:12px;border-color:var(--ui-control-border)}.page-buttons{display:flex;align-items:center;gap:3px}.page-buttons button{display:flex;justify-content:center;align-items:center;min-width:28px;height:28px;padding:3px 7px;border:0;border-radius:4px;background:transparent;color:var(--ui-text-secondary);font-size:13px}.page-buttons button.current{font-weight:600;background:var(--ui-primary);color:var(--ui-surface)}.page-buttons button:disabled{opacity:1;color:var(--ui-disabled-text);background:var(--ui-disabled-bg)}.page-buttons .mdi{font-size:14px}.pagination-selection{margin-left:14px;padding-left:14px;border-left:1px solid #e2e8f1;color:var(--ui-text-secondary)}.inventory-footnote{display:flex;align-items:center;gap:5px;margin:14px 1px 0!important;color:var(--ui-text-secondary);font-size:12px}.inventory-footnote .mdi{font-size:12px}.inventory-notice{display:flex;align-items:center;gap:8px;padding:11px 14px;margin:-5px 0 16px!important;border:1px solid #dcebe3;border-radius:6px;color:var(--ui-success);background:var(--ui-success-soft);font-size:13px}.inventory-notice.error{border-color:#efddd7;color:var(--ui-danger);background:var(--ui-danger-soft)}.inventory-notice>button{margin-left:auto;border:0;background:none;color:inherit;font-size:14px}.inventory-empty{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;min-height:260px;padding:35px;color:var(--ui-text-secondary);text-align:center}.inventory-empty>.mdi{font-size:34px;color:var(--ui-text-secondary)}.inventory-empty strong{font-weight:500;font-size:14px;color:var(--ui-text)}.inventory-empty p{color:var(--ui-text-secondary);font-size:13px}.inventory-places{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:20px;min-height:350px}.inventory-place{text-align:left;align-self:start;background:#fff;border:1px solid #e5ebf3;border-radius:8px;padding:20px}.inventory-place:hover{background:#fafcff;border-color:#c3d4ef}.inventory-place>div{display:flex;justify-content:space-between;color:var(--ui-text-secondary);font-size:18px;margin-bottom:16px}.inventory-place h3{margin-bottom:9px;font-size:14px;color:var(--ui-text)}.inventory-place>strong{font-size:25px;font-weight:600;color:var(--ui-text)}.inventory-place small{font-size:11px;font-weight:400;color:var(--ui-text-secondary);margin-left:5px}.inventory-place p{display:flex;flex-wrap:wrap;gap:9px;color:var(--ui-text-secondary);margin-top:15px;padding-top:12px;border-top:1px solid #edf1f7;font-size:12px}.stock-action-dialog fieldset{border:0;padding:0;margin:0;min-width:0}.stock-selection-summary{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:10px;padding:11px;border:1px solid #e3ebf8;border-radius:6px;background:#f3f7ff;font-size:13px;color:var(--ui-primary)}.stock-selection-summary strong{font-size:12px;font-weight:600}.stock-selection-summary>span:last-child{color:var(--ui-text-secondary);margin-left:auto;font-size:12px}.stock-selected-details{margin:0 0 21px;color:var(--ui-text-secondary);font-size:13px}.stock-selected-details summary{cursor:pointer;padding:4px 0}.stock-selected-details>div{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px;max-height:100px;overflow:auto}.stock-selected-details span{background:#f4f7fb;border:1px solid #e9eef6;border-radius:4px;padding:3px 5px;font-size:12px}.stock-setting-row{display:grid;grid-template-columns:1fr 1fr 36px;gap:10px;align-items:center}.stock-setting-row .icon-button{width:36px;margin-top:7px;color:var(--ui-text-secondary);font-size:18px}.stock-add-setting{margin:0 0 20px}.stock-dialog-description{color:var(--ui-text-secondary);font-size:12px;margin:0 0 20px!important}.stock-dialog-footer{display:flex;justify-content:flex-end;gap:8px;padding-top:20px;margin-top:9px;border-top:1px solid #e7edf5}.stock-dialog-footer .desk-button{min-width:77px;min-height:39px}.stock-date-hint{color:var(--ui-text-secondary);margin-top:-7px!important;font-size:12px}.desktop-legacy-detail .modal-content{z-index:1050!important;background:#20314866}.desktop-legacy-detail .modal-mask{z-index:0!important;background:transparent!important}.desktop-legacy-detail .container{position:relative;z-index:1!important;width:min(1450px,calc(100vw - 80px));max-width:none;max-height:calc(100dvh - 70px);overflow:auto;background:#fff;border-radius:12px;padding:20px;box-shadow:0 24px 80px #20314833}.spinning{animation:factory-spin 1s linear infinite}@media (min-width:1600px){.desktop-page{padding:30px 38px}.desktop-topbar{padding:0 38px}.inventory-table td{height:50px}}@media (max-width:1200px){.inventory-overview{gap:17px}.inventory-overview .overview-hint{display:none}.desktop-page{padding:26px 23px}.desktop-topbar{padding:0 23px}.inventory-table-toolbar{align-items:flex-start;flex-wrap:wrap;gap:15px}.table-tools{margin-left:auto}.filter-primary-row{flex-wrap:wrap}.filter-selects{margin-left:0}.inventory-places{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.factory-sidebar{width:188px}.desktop-main{margin-left:188px}.sidebar-brand{margin:0 16px}.sidebar-brand img{width:94px}.sidebar-brand>span{font-size:7px;padding-left:7px}.sidebar-footer{padding:17px 16px}.sidebar-navigation{padding:20px 10px}.workdate-control>span{display:none}.desktop-breadcrumb{gap:7px;font-size:10px}.inventory-overview{flex-wrap:wrap;row-gap:12px}.table-description{display:none}.inventory-pagination{align-items:flex-start;flex-direction:column}.pagination-controls{justify-content:space-between;width:100%}.table-tools{flex-wrap:wrap}.desk-search{max-width:none}}@media (max-width:650px){.factory-sidebar{width:56px}.desktop-main{margin-left:56px}.sidebar-brand{margin:0 9px;height:62px}.sidebar-brand img{width:37px;-o-object-fit:contain;object-fit:contain}.sidebar-brand>span,.sidebar-footer,.sidebar-main-link,.sidebar-product-link,.sidebar-section h2{display:none}.desktop-topbar{padding:0 14px}.workdate-control{display:none}.desktop-page{padding:22px 15px}.inventory-heading{gap:12px;align-items:flex-start}.inventory-heading h1{font-size:23px}.inventory-heading p{font-size:10px}.inventory-heading-actions .desk-button{padding:6px 9px;font-size:0!important}.inventory-heading-actions .desk-button .mdi{font-size:18px}.inventory-overview{gap:15px}.inventory-overview>div>strong{font-size:13px}.inventory-overview>div>span:not(.overview-dot){font-size:10px}.inventory-filter{padding:14px}.filter-selects{flex-wrap:wrap}.inventory-table-toolbar{padding:15px}.table-tools{margin-left:0}.inventory-view-toggle{margin-right:4px}.toolbar-divider{display:none}.inventory-places{grid-template-columns:1fr}.custom-date-row{flex-wrap:wrap}.inventory-footnote{align-items:flex-start;line-height:1.8}}.active-place-filter{display:inline-flex;align-items:center;gap:6px;margin-top:13px;padding:4px 7px;border:1px solid #e2e9f4;border-radius:4px;background:#f3f6fc;color:var(--ui-primary);font-size:13px}.active-place-filter>button{background:transparent;border:0;color:inherit;padding:0}.inventory-table th button>.mdi{opacity:0}.inventory-table th button.sort-active>.mdi,.inventory-table th button:focus-visible>.mdi,.inventory-table th button:hover>.mdi{opacity:1}.desk-button:disabled .mdi{color:currentColor}.desktop-factory .production-page{min-width:0}.desktop-factory .production-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.desktop-factory .production-heading h1{margin:0;color:var(--ui-text);line-height:1.4;font-size:26px;font-weight:650;letter-spacing:-.035em}.desktop-factory .production-heading p{margin:8px 0 0;color:var(--ui-text-secondary);font-size:14px}.desktop-factory .production-product-tag{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--ui-border);border-radius:6px;background:var(--ui-surface);color:var(--ui-text-secondary);font-size:13px;white-space:nowrap}.desktop-factory .production-tabs{display:flex;gap:24px;margin-bottom:22px;border-bottom:1px solid var(--ui-border);overflow-x:auto}.desktop-factory .production-tabs a{display:flex;align-items:center;gap:8px;padding:13px 2px;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--ui-text-secondary);font-weight:500;white-space:nowrap}.desktop-factory .production-tabs .mdi{font-size:18px}.desktop-factory .production-tabs a:hover{color:var(--ui-primary)}.desktop-factory .production-tabs a[aria-current=page]{border-bottom-color:var(--ui-primary);color:var(--ui-primary);font-weight:650}.desktop-factory .production-content{min-width:0}.desktop-factory .production-page .DataBox,.desktop-factory .production-page .data-box,.desktop-factory .production-page .dataBox{height:auto;max-height:none;padding:0;background:transparent;min-width:0}.desktop-factory .production-page .white-box{height:auto;margin:0;padding:20px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface);min-width:0}.desktop-factory .production-page .box-title{margin:0;color:var(--ui-text);font-size:16px;font-weight:650;line-height:1.6}.desktop-factory .production-page .table-responsive{overflow-x:auto;min-width:0}.desktop-factory .production-page .table{width:100%;margin:0;border-collapse:collapse;color:var(--ui-text);font-size:14px}.desktop-factory .production-page .table>thead>th,.desktop-factory .production-page .table>thead>tr>th{padding:11px 12px!important;border-bottom:1px solid var(--ui-border);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:13px;font-weight:600;white-space:nowrap;vertical-align:middle}.desktop-factory .production-page .table>tbody>tr>td{padding:12px!important;border-bottom:1px solid #e9edf2;vertical-align:middle;font-variant-numeric:tabular-nums}.desktop-factory .production-page .table>tbody>tr:last-child>td{border-bottom:0}.desktop-factory .production-page .table>tbody>tr:hover{background-color:#f5f8fd}.desktop-factory .production-page .btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 11px;border:1px solid var(--ui-control-border);border-radius:6px;background:var(--ui-surface);color:var(--ui-text-secondary);font-size:13px;font-weight:500;line-height:1.5;white-space:nowrap}.desktop-factory .production-page .btn:hover{border-color:var(--ui-primary);color:var(--ui-primary);background:#f6f9ff}.desktop-factory .production-page .btn-primary{background:var(--ui-primary);border-color:var(--ui-primary);color:#fff}.desktop-factory .production-page .btn-primary:hover{background:var(--ui-primary-hover);color:#fff}.desktop-factory .production-page .btn-outline-danger{color:var(--ui-danger);border-color:#cc8c86}.desktop-factory .production-page .btn-outline-danger:hover{background:var(--ui-danger-soft);border-color:var(--ui-danger);color:var(--ui-danger)}.desktop-factory .production-page .btn:disabled{background:var(--ui-disabled-bg);border-color:var(--ui-border);color:var(--ui-disabled-text);opacity:1}.desktop-factory .production-page .form-control,.desktop-factory .production-page .form-select{height:36px;min-width:0;border:1px solid var(--ui-control-border);border-radius:5px;padding:6px 9px;background-color:#fff;color:var(--ui-text);font-size:14px}.desktop-factory .production-page .form-control::-moz-placeholder{color:var(--ui-text-muted)}.desktop-factory .production-page .form-control::placeholder{color:var(--ui-text-muted)}.desktop-factory .production-page .form-check-input{width:15px;height:15px;margin:0;float:none;vertical-align:middle;accent-color:var(--ui-primary);cursor:pointer}.desktop-factory .production-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;padding:17px 0;margin-top:8px}.desktop-factory .production-selection{color:var(--ui-text-secondary);white-space:nowrap;font-size:13px}.desktop-factory .production-selection>strong{color:var(--ui-text);font-size:19px;font-weight:650;margin-right:3px}.desktop-factory .production-selection>span{margin-left:7px}.desktop-factory .production-selection b{color:var(--ui-primary);font-weight:600}.desktop-factory .production-batch-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.desktop-factory .production-date-action{display:flex;align-items:center;gap:6px;padding-right:10px;margin-right:2px;border-right:1px solid var(--ui-border)}.desktop-factory .production-date-action .btn{width:auto}.desktop-factory .production-page td.production-empty{padding:48px 16px!important;text-align:center}.desktop-factory .production-empty>span,.desktop-factory .production-empty>strong{display:block}.desktop-factory .production-empty>.mdi{font-size:30px;color:var(--ui-text-muted);margin-bottom:12px}.desktop-factory .production-empty>strong{font-size:14px;font-weight:600}.desktop-factory .production-empty>span:last-child{margin-top:7px;font-size:13px;color:var(--ui-text-secondary)}.desktop-factory .production-device-heading{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.desktop-factory .production-device-heading .col-3{width:auto}.desktop-factory .production-device-heading .form-select{min-width:170px}.desktop-factory .production-device-heading .box-title{margin-right:auto}.desktop-factory .production-communication-toggle{display:flex;align-items:center;gap:9px;color:var(--ui-text-secondary);font-size:13px;cursor:pointer}.desktop-factory .production-communication-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.desktop-factory .production-communication-layout.with-communication{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.desktop-factory .production-communication-layout>.table-responsive{width:100%;margin:0!important;height:auto!important}.desktop-factory .production-page .free-flow{background:var(--ui-danger-soft)}.desktop-factory .production-page .charge{background:var(--ui-success-soft)}.desktop-factory .production-page .finish{background:var(--ui-surface-subtle)}.desktop-factory .production-page .Complete{background:var(--ui-success-soft)}.desktop-factory .production-page .production-journal{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px;align-items:start}.desktop-factory .production-journal>.white-box{width:100%!important}.desktop-factory .production-journal>.white-box:first-child>div:first-child{flex-wrap:wrap;gap:14px;margin-bottom:20px}.desktop-factory .production-journal>.white-box:first-child>div:first-child>.ms-auto{margin-bottom:0!important}.desktop-factory .production-journal>.white-box:first-child>.col-12.d-flex{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}.desktop-factory .production-journal>.white-box:first-child>.col-12.d-flex>.col-8{flex:1;width:auto}.desktop-factory .production-journal>.white-box:first-child>.col-12.d-flex>.col-4{width:auto;align-items:center}.desktop-factory .production-journal .form-control{width:100%;min-width:70px}.desktop-factory .production-journal .tdlist{display:grid;gap:7px}.desktop-factory .production-journal .table>tbody>tr>td{padding:9px 7px!important}.desktop-factory .production-page .production-board{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.desktop-factory .production-board>.col-4{width:100%;min-width:0}.desktop-factory .production-board .white-box{padding:0;overflow:hidden!important}.desktop-factory .production-board .white-box>.d-flex{padding:17px 18px;border-bottom:1px solid var(--ui-border);border-top:3px solid var(--ui-control-border)}.desktop-factory .production-board>:nth-child(2) .white-box>.d-flex{border-top-color:var(--ui-primary)}.desktop-factory .production-board>:nth-child(3) .white-box>.d-flex{border-top-color:var(--ui-success)}.desktop-factory .production-board .fs-4{display:flex;align-items:center;gap:8px;width:100%;margin:0!important;font-size:15px!important;font-weight:650!important}.desktop-factory .production-stage-count{margin-left:auto;padding:1px 7px;border-radius:4px;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:12px;font-variant-numeric:tabular-nums}.desktop-factory .production-board table{display:block;overflow-x:auto}.desktop-factory .production-board tbody,.desktop-factory .production-board thead{display:table;width:100%;table-layout:fixed;min-width:300px}.desktop-factory .production-board .table>tbody>tr>td{overflow-wrap:anywhere;white-space:normal}.desktop-factory .production-board .table td:first-child,.desktop-factory .production-board .table th:first-child{width:40px}.desktop-factory .production-board td:nth-child(2){cursor:pointer}.desktop-factory .production-board td:nth-child(2):hover{color:var(--ui-primary)}.desktop-factory .production-board td.production-stage-empty{padding:36px 14px!important;color:var(--ui-text-secondary);font-size:13px}.desktop-factory .production-page .item-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.desktop-factory .production-page .item-list>.item{min-width:0;margin:0}.desktop-factory .production-page .item-list .white-box{height:100%!important;min-height:200px;padding:17px;overflow:hidden}.desktop-factory .production-page .item-list .box-title{width:auto;flex:1;min-width:0}.desktop-factory .production-page .item-list .box-title h5{font-size:14px;font-weight:650;margin:0;white-space:normal;overflow-wrap:anywhere}.desktop-factory .production-page .item-list .box-title+.col-3{width:auto}.desktop-factory .production-page .item-list .table-responsive{max-height:230px}.desktop-factory .production-page .item-list .table>tbody>tr>td{padding:9px 7px!important;white-space:nowrap;font-size:13px}.desktop-factory .production-page .production-lot-usage{color:var(--ui-primary)}.desktop-factory .production-page .production-lot-fail{color:var(--ui-danger)}.desktop-factory .production-start{display:flex;align-items:center;flex-direction:column;gap:14px;padding:62px 24px;border:1px solid var(--ui-border);border-radius:9px;background:#fff;text-align:center}.desktop-factory .production-start>.mdi{font-size:36px;color:var(--ui-primary)}.desktop-factory .production-start h2{margin:0;font-size:19px;font-weight:650}.desktop-factory .production-start p{margin:0 0 8px;color:var(--ui-text-secondary)}@media (max-width:1450px){.desktop-factory .production-page .item-list{grid-template-columns:repeat(2,minmax(0,1fr))}.desktop-factory .production-communication-layout.with-communication,.desktop-factory .production-page .production-journal{grid-template-columns:minmax(0,1fr)}}@media (max-width:1100px){.desktop-factory .production-page .production-board{grid-template-columns:minmax(0,1fr)}.desktop-factory .production-board tbody,.desktop-factory .production-board thead{table-layout:auto}.desktop-factory .production-heading{align-items:flex-start}.desktop-factory .production-product-tag{display:none}}@media (max-width:700px){.desktop-factory .production-heading h1{font-size:23px}.desktop-factory .production-page .item-list{grid-template-columns:minmax(0,1fr)}.desktop-factory .production-tabs{gap:18px}.desktop-factory .production-tabs a{font-size:13px}.desktop-factory .production-page .white-box{padding:15px}}.desktop-factory .production-page .table td>.m-2{margin:0!important}.container[data-v-47024413]{z-index:999}.forms-inputs[data-v-47024413]{position:relative}.form-control[data-v-47024413]{height:60px}.forms-inputs span[data-v-47024413]{position:absolute;top:-20px;left:10px;background-color:#fff;padding:5px 10px;font-size:15px}.modal-mask[data-v-47024413]{position:fixed;z-index:12;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:table;transition:opacity .3s ease}.modal-content[data-v-47024413]{position:fixed;z-index:3;top:0;left:0;display:flex;justify-content:center;align-items:center;width:100%;height:100%}.flex[data-v-47024413]{display:flex}.btn[data-v-47024413]{height:50px}