@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/manrope-latin-300-normal-BgxWhS7-.woff2)format("woff2"),url(/assets/manrope-latin-300-normal-BXCth4v8.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-400-normal-PaqtzbVb.woff2)format("woff2"),url(/assets/manrope-latin-400-normal-8tf8FM3T.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2)format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2)format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/manrope-latin-800-normal-BfWYOv1c.woff2)format("woff2"),url(/assets/manrope-latin-800-normal-uHUdIJgA.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/manrope-latin-ext-300-normal-Btyq5fVI.woff2)format("woff2"),url(/assets/manrope-latin-ext-300-normal-DfIhbc9V.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-ext-400-normal-CMDvPJRp.woff2)format("woff2"),url(/assets/manrope-latin-ext-400-normal-C-X6QNXX.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-ext-500-normal-dm74KBQw.woff2)format("woff2"),url(/assets/manrope-latin-ext-500-normal-EtoS1VaI.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-ext-600-normal-_gBojHdJ.woff2)format("woff2"),url(/assets/manrope-latin-ext-600-normal-u5Pl7hTU.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-ext-700-normal-DYOwVNan.woff2)format("woff2"),url(/assets/manrope-latin-ext-700-normal-eVCcYqtJ.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/manrope-latin-ext-800-normal-DdFx7KEb.woff2)format("woff2"),url(/assets/manrope-latin-ext-800-normal-BQAQsuQc.woff)format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2)format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.woff)format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-mono-latin-500-normal-DRMDZjhP.woff2)format("woff2"),url(/assets/dm-mono-latin-500-normal-CN8Miw6E.woff)format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-ext-400-normal-C2zvOubV.woff2)format("woff2"),url(/assets/dm-mono-latin-ext-400-normal-1aZr6b2b.woff)format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-mono-latin-ext-500-normal-BtRyHRi6.woff2)format("woff2"),url(/assets/dm-mono-latin-ext-500-normal-Dw3M13d8.woff)format("woff")}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;font-display:block;src:url(/assets/material-symbols-outlined-CP_JrVKe.woff2)format("woff2")}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"liga";direction:ltr;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}:root{--c-canvas:#f5f5f5;--c-paper:#fff;--c-paper-sunk:#ececec;--c-paper-line:#e4e4e0;--c-ink:#1a1f1c;--c-ink-muted:#5a625d;--c-ink-faint:#8a8f8a;--c-leaf:#2f6b3a;--c-leaf-deep:#1f4a28;--c-leaf-soft:#c8dccc;--c-leaf-haze:#eaf2eb;--c-graphite:#2a2e2c;--c-amber:#c97a1f;--c-rust:#a23617;--c-stock:var(--c-leaf);--c-shipped:var(--c-ink-muted);--c-archived:var(--c-ink-faint);--ff-display:"Manrope", system-ui, sans-serif;--ff-mono:"DM Mono", ui-monospace, "SF Mono", monospace;--r-sm:4px;--r-md:8px;--r-lg:14px;--sh-1:0 1px 0 #1419160a, 0 1px 2px #1419160f;--sh-2:0 2px 4px #1419160f, 0 8px 24px #1419160f;--t-fast:.12s cubic-bezier(.4, 0, .2, 1);--t-med:.22s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html,body,#root{background:var(--c-canvas);height:100%;color:var(--c-ink);font-family:var(--ff-display);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}.link{color:var(--c-leaf)}.link:hover{text-decoration:underline}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--c-graphite);color:#d6d6d2;border-right:1px solid var(--c-paper-line);flex-direction:column;align-self:start;gap:8px;height:100vh;padding:32px 20px;display:flex;position:sticky;top:0}.sidebar__brand{font-family:var(--ff-display);letter-spacing:-.02em;color:#fff;align-items:center;gap:10px;margin-bottom:24px;font-size:18px;font-weight:800;display:flex}.sidebar__brand:before{content:"";background:radial-gradient(circle at 30% 30%, var(--c-leaf-soft) 0 30%, transparent 31%), var(--c-leaf);border-radius:999px;width:22px;height:22px;box-shadow:inset 0 0 0 2px #ffffff1f}.sidebar__section{text-transform:uppercase;letter-spacing:.16em;color:#8a8f8a;font-size:10px;font-family:var(--ff-mono);margin:18px 8px 4px}.nav-item{border-radius:var(--r-md);color:#c8c8c4;transition:background var(--t-fast), color var(--t-fast);cursor:pointer;align-items:center;gap:10px;padding:9px 12px;font-size:14px;font-weight:500;display:flex}.nav-item:hover{color:#fff;background:#ffffff0d}.nav-item--active{background:var(--c-leaf);color:#fff}.nav-item--active:hover{background:var(--c-leaf)}.main{padding:32px 40px 80px;overflow-y:auto}.page-head{border-bottom:1px solid var(--c-paper-line);justify-content:space-between;align-items:flex-end;margin-bottom:28px;padding-bottom:18px;display:flex}.page-head__title{letter-spacing:-.025em;margin:0;font-size:28px;font-weight:700}.page-head__subtitle{font-family:var(--ff-mono);color:var(--c-ink-muted);text-transform:uppercase;letter-spacing:.12em;margin:4px 0 0;font-size:12px}.card{background:var(--c-paper);border:1px solid var(--c-paper-line);border-radius:var(--r-lg);box-shadow:var(--sh-1);padding:24px}.card__title{font-size:13px;font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--c-ink-muted);margin:0 0 16px}.stat-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px;display:grid}.stat{background:var(--c-paper);border:1px solid var(--c-paper-line);border-radius:var(--r-lg);padding:18px 20px;position:relative;overflow:hidden}.stat:after{content:"";background:var(--c-leaf);width:3px;position:absolute;top:0;bottom:0;left:0}.stat--amber:after{background:var(--c-amber)}.stat--graphite:after{background:var(--c-graphite)}.stat--rust:after{background:var(--c-rust)}.stat__label{font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--c-ink-muted);font-size:10px}.stat__value{letter-spacing:-.02em;margin-top:6px;font-size:30px;font-weight:700}.stat__delta{font-family:var(--ff-mono);color:var(--c-ink-faint);margin-top:4px;font-size:11px}.form{gap:18px;display:grid}.form-row{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field__label{font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--c-ink-muted);font-size:10px}.field__label--required:after{content:" *";color:var(--c-rust)}.input,.select{width:100%;font-family:var(--ff-display);border:1px solid var(--c-paper-line);border-radius:var(--r-md);background:var(--c-paper);color:var(--c-ink);transition:border-color var(--t-fast), box-shadow var(--t-fast);padding:10px 12px;font-size:14px}.input:focus,.select:focus{border-color:var(--c-leaf);box-shadow:0 0 0 3px var(--c-leaf-haze);outline:none}.input--error{border-color:var(--c-rust)}.input:read-only{background:var(--c-paper-sunk);color:var(--c-ink-muted);cursor:not-allowed}.field__error{font-family:var(--ff-mono);color:var(--c-rust);font-size:11px}.field__help{font-family:var(--ff-mono);color:var(--c-ink-faint);font-size:11px}.btn{font-family:var(--ff-display);border-radius:var(--r-md);cursor:pointer;transition:all var(--t-fast);border:1px solid #0000;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;display:inline-flex}.btn--primary{background:var(--c-leaf);color:#fff}.btn--primary:hover{background:var(--c-leaf-deep)}.btn--ghost{border-color:var(--c-paper-line);color:var(--c-ink);background:0 0}.btn--ghost:hover{border-color:var(--c-ink-muted)}.btn--danger{color:var(--c-rust);border-color:var(--c-rust);background:0 0}.btn:disabled{opacity:.5;cursor:not-allowed}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;vertical-align:middle;-webkit-user-select:none;user-select:none;line-height:1}.icon--spin{animation:1s linear infinite icon-spin}@keyframes icon-spin{to{transform:rotate(360deg)}}.btn--icon{gap:2px;padding:8px}.link--icon{align-items:center;gap:4px;display:inline-flex}.table{border-collapse:collapse;width:100%;font-size:14px}.table thead{background:var(--c-paper-sunk)}.table th{text-align:left;font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--c-ink-muted);border-bottom:1px solid var(--c-paper-line);padding:12px 16px;font-size:10px;font-weight:500}.table td{border-bottom:1px solid var(--c-paper-line);padding:14px 16px}.table tbody tr:hover{background:var(--c-leaf-haze)}.table tbody tr:last-child td{border-bottom:none}.mono{font-family:var(--ff-mono);font-size:13px}.badge{font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.1em;border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:11px;display:inline-flex}.badge--inbound{color:var(--c-leaf);background:var(--c-leaf-haze)}.badge--outbound{color:var(--c-amber);background:#fbf3e6}.badge--stock{color:var(--c-leaf-deep);background:var(--c-leaf-soft)}.badge--shipped{color:var(--c-shipped);background:var(--c-paper-sunk)}.badge--archived{color:var(--c-archived);background:var(--c-paper-sunk)}.palet-builder{border:1px dashed var(--c-paper-line);border-radius:var(--r-lg);background:var(--c-paper-sunk);padding:18px}.palet-builder__head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.palet-builder__counter{font-family:var(--ff-mono);color:var(--c-ink-muted);font-size:12px}.palet-builder__counter--over{color:var(--c-rust);font-weight:600}.palet-row{border-top:1px solid var(--c-paper-line);grid-template-columns:80px 1fr 120px 40px;align-items:center;gap:10px;padding:8px 0;display:grid}.palet-row--packaging{grid-template-columns:80px 1fr 100px 90px 40px}.palet-row__field-label{font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--c-ink-faint);margin-bottom:2px;font-size:10px;display:block}.palet-row:first-of-type{border-top:none}.palet-row__seq{font-family:var(--ff-mono);color:var(--c-ink-muted);font-size:13px}.palet-row__remove{color:var(--c-ink-faint);cursor:pointer;border-radius:var(--r-sm);background:0 0;border:none;padding:4px}.palet-row__remove:hover{color:var(--c-rust);background:#fbe9e4}.weight-summary{border-top:1px solid var(--c-paper-line);font-family:var(--ff-mono);justify-content:space-between;margin-top:14px;padding-top:14px;font-size:13px;display:flex}.weight-summary__value{color:var(--c-leaf);font-size:16px;font-weight:700}.weight-summary--secondary{color:var(--c-ink-faint);border-top:none;margin-top:4px;padding-top:0}.weight-summary--secondary .weight-summary__value{color:var(--c-ink-faint);font-size:13px;font-weight:600}.form-actions{border-top:1px solid var(--c-paper-line);justify-content:flex-end;gap:10px;padding-top:18px;display:flex}.filter-bar{border-bottom:1px solid var(--c-paper-line);flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:18px;padding-bottom:18px;display:flex}.filter-bar__field{flex-direction:column;gap:6px;min-width:160px;display:flex}.filter-bar__field--grow{flex:220px}.th-sort{font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin:0;padding:0;display:inline-flex}.th-sort:hover{color:var(--c-ink)}.th-sort__arrow{color:var(--c-leaf);font-size:10px}.pagination{border-top:1px solid var(--c-paper-line);justify-content:space-between;align-items:center;gap:12px;margin-top:4px;padding-top:18px;display:flex}.pagination__summary{font-family:var(--ff-mono);color:var(--c-ink-muted);font-size:12px}.pagination__controls{align-items:center;gap:10px;display:flex}.scan-bar{align-items:flex-end;gap:10px;display:flex}.scan-bar .field{flex:1}.modal-backdrop{z-index:100;background:#14191680;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--c-paper);border-radius:var(--r-lg);box-shadow:var(--sh-2);flex-direction:column;gap:14px;width:100%;max-width:420px;padding:20px;display:flex}.modal__header{justify-content:space-between;align-items:center;display:flex}.modal__title{font-family:var(--ff-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--c-ink);font-size:13px;font-weight:600}.modal__close{color:var(--c-ink-muted);cursor:pointer;border-radius:var(--r-sm);transition:background var(--t-fast), color var(--t-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:inline-flex}.modal__close:hover{background:var(--c-paper-sunk);color:var(--c-ink)}.qr-scanner__viewport{aspect-ratio:4/3;background:var(--c-graphite);border-radius:var(--r-md);width:100%;position:relative;overflow:hidden}.qr-scanner__video{object-fit:cover;width:100%;height:100%}.qr-scanner__overlay{text-align:center;color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:13px;display:flex;position:absolute;inset:0}.qr-scanner__overlay--error{color:var(--c-rust);background:#141916d9}.qr-scanner__hint{color:var(--c-ink-muted);text-align:center;margin:0;font-size:13px}.lot-summary{gap:28px;padding:14px 0 18px;display:flex}.lot-summary__item{flex-direction:column;gap:2px;display:flex}.lot-summary__value{font-family:var(--ff-mono);color:var(--c-ink);font-size:20px;font-weight:700}.output-lot{border:1px solid var(--c-paper-line);border-radius:var(--r-md);flex-direction:column;gap:12px;padding:16px;display:flex}.output-lot+.output-lot{margin-top:12px}.output-lot__row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.output-lot__row .field{flex:1;min-width:140px}.selection-bar{background:var(--c-leaf-haze);border:1px solid var(--c-leaf-soft);border-radius:var(--r-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:14px 16px;display:flex}.selection-bar__summary{font-family:var(--ff-mono);color:var(--c-leaf-deep);font-size:13px}.checkbox-cell{white-space:nowrap;width:1%}
