:root{--fs-ink:#0e1116;--fs-ink-2:#59606b;--fs-ink-3:#6a717c;--fs-bg:#f6f7f9;--fs-surface:#fff;--fs-surface-2:#fbfbfc;--fs-surface-3:#eceff4;--fs-line:#e6e8ec;--fs-line-strong:#c9ced6;--fs-primary:#2147b3;--fs-primary-press:#162f78;--fs-primary-tint:#eef2fc;--fs-on-primary:#fff;--fs-focus:#2147b3;--fs-success:#1f6b3a;--fs-success-bg:#e8f5ed;--fs-success-line:#a9d8ba;--fs-success-solid:#2f9e5c;--fs-warning:#7a4b00;--fs-warning-bg:#fff3dc;--fs-warning-line:#f1d49a;--fs-danger:#a3201a;--fs-danger-bg:#fdecea;--fs-danger-line:#f2b3ad;--fs-danger-solid:#b42318;--fs-defect:#9a3a0a;--fs-defect-bg:#fdeee3;--fs-defect-line:#efbf9a;--fs-defect-solid:#a8440f;--fs-recall:#5b2a9e;--fs-recall-bg:#f2ecfc;--fs-recall-line:#cdb8ee;--fs-info:#2147b3;--fs-info-bg:#eef2fc;--fs-info-line:#c9d5f5;--fs-neutral:#4b525c;--fs-neutral-bg:#eef0f3;--fs-neutral-line:#d4d8de;--fs-font:"Geist", -apple-system, "Inter", system-ui, sans-serif;--fs-mono:"Geist", -apple-system, "Inter", system-ui, sans-serif;--fs-space-1:4px;--fs-space-2:8px;--fs-space-3:12px;--fs-space-4:16px;--fs-space-5:24px;--fs-space-6:32px;--fs-space-7:40px;--fs-space-8:48px;--fs-r-s:8px;--fs-r-m:10px;--fs-r-l:14px;--fs-target-desk:36px;--fs-target-min:48px;--fs-target:52px;--fs-target-xl:56px;--fs-shadow-card:0 1px 2px #0e11160a, 0 12px 32px #0e11160a;--fs-shadow-bar:0 -1px 0 #e6e8ec;--fs-shadow-sheet:0 12px 40px #0e111624}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--fs-bg);color:var(--fs-ink);font-family:var(--fs-font);letter-spacing:-.006em;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;margin:0;font-size:15px;line-height:22px}a{color:var(--fs-primary)}a:hover{color:var(--fs-primary-press)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--fs-focus);outline-offset:2px}h1,h2,h3{margin:0}.mono{font-family:var(--fs-mono);font-variant-numeric:tabular-nums;letter-spacing:0}.muted{color:var(--fs-ink-2)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{justify-content:center;align-items:center;gap:var(--fs-space-2);height:var(--fs-target);padding:0 var(--fs-space-5);border-radius:var(--fs-r-m);letter-spacing:-.01em;cursor:pointer;white-space:nowrap;border:1px solid #0000;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.btn--primary{background:var(--fs-ink);color:var(--fs-on-primary)}.btn--primary:hover{background:#262b33}.btn--primary:active{background:#000}.btn--secondary{background:var(--fs-surface);border-color:var(--fs-line-strong);color:var(--fs-ink)}.btn--secondary:hover{background:var(--fs-surface-2)}.btn--secondary:active{background:var(--fs-neutral-bg)}.btn--tertiary{color:var(--fs-primary);padding:0 var(--fs-space-3);background:0 0;font-weight:500;text-decoration:none}.btn--tertiary:hover{text-underline-offset:3px;text-decoration:underline}.btn--tertiary:active{background:var(--fs-primary-tint)}.btn:disabled{background:var(--fs-neutral-bg);color:var(--fs-ink-3);cursor:not-allowed;border-color:#0000}.btn--tertiary:disabled{background:0 0}.btn--xl{height:var(--fs-target-xl);width:100%}.btn--m{height:var(--fs-target-desk);border-radius:9px;padding:0 14px;font-size:14px}.spinner{flex:none;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.field{flex-direction:column;gap:6px;display:flex}.field__label{font-size:16px;font-weight:600;line-height:22px}.field__label .optional{color:var(--fs-ink-2);font-weight:400}.input{height:var(--fs-target);padding:0 var(--fs-space-4);border:1px solid var(--fs-line-strong);border-radius:var(--fs-r-m);background:var(--fs-surface);width:100%;font-size:16px}.input:focus{border-color:var(--fs-primary);outline:none;box-shadow:0 0 0 4px #2147b31a}.input[aria-invalid=true]{border-color:var(--fs-danger);box-shadow:0 0 0 4px #a3201a14}input.input:read-only{background:var(--fs-surface-2)}.field__help{color:var(--fs-ink-2);font-size:14px;line-height:20px}.field__error{color:var(--fs-danger);gap:6px;font-size:14px;font-weight:500;line-height:20px;display:flex}.field__error svg{flex:none;margin-top:1px}.desk .field__label{color:var(--fs-ink-2);font-size:13px;font-weight:500;line-height:18px}.desk .input{height:var(--fs-target-desk);border-radius:9px;font-size:14px}select.input{appearance:auto}.check{cursor:pointer;align-items:center;gap:10px;min-height:32px;font-size:15px;display:flex}.check input{width:22px;height:22px;accent-color:var(--fs-primary);margin:0}.notice{border-radius:var(--fs-r-m);align-items:flex-start;gap:10px;padding:12px 14px;font-size:14px;line-height:20px;display:flex}.notice svg{flex:none}.notice--calm{background:var(--fs-surface);border:1px solid var(--fs-line);box-shadow:0 1px 2px #0e11160a}.notice--error{background:var(--fs-danger-bg);border:1px solid var(--fs-danger-line);color:var(--fs-danger)}.notice--success{background:var(--fs-success-bg);border:1px solid var(--fs-success-line);color:var(--fs-success)}.notice--network{background:var(--fs-ink);color:#fff}.notice--network .notice__body{flex-direction:column;gap:8px;display:flex}.notice--network button{color:#fff;cursor:pointer;background:0 0;border:2px solid #fff;border-radius:10px;align-self:flex-start;height:40px;padding:0 14px;font-size:15px;font-weight:700}.chip{background:var(--fs-neutral-bg);white-space:nowrap;border-radius:6px;align-items:center;height:24px;padding:0 8px;font-size:13px;font-weight:700;display:inline-flex}.chip--remove{border:1px solid var(--fs-line-strong);background:var(--fs-surface);border-radius:999px;gap:2px;height:32px;padding:0 4px 0 12px;font-size:14px}.chip--remove button{cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.count{background:var(--fs-ink);color:#fff;text-align:center;border-radius:10px;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:600;line-height:20px}.skeleton{background:var(--fs-neutral-bg);border-radius:8px}.centered-state{text-align:center;flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:14px;padding:32px 24px;display:flex}.centered-state__icon{background:var(--fs-surface);border:1px solid var(--fs-line);width:56px;height:56px;color:var(--fs-ink-2);border-radius:14px;justify-content:center;align-items:center;display:flex}.centered-state__title{letter-spacing:-.02em;font-size:18px;font-weight:600;line-height:24px}.centered-state__text{color:var(--fs-ink-2);max-width:420px;font-size:16px;line-height:23px}.mobile{background:var(--fs-bg);flex-direction:column;max-width:480px;min-height:100%;margin:0 auto;display:flex}.mobile__header{background:var(--fs-surface);border-bottom:1px solid var(--fs-line);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:22px 16px 14px;display:flex}.mobile__title{letter-spacing:-.02em;font-size:24px;font-weight:600;line-height:30px}.mobile__content{flex-direction:column;flex:auto;gap:14px;padding:16px;display:flex}.mobile__footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--fs-surface);box-shadow:var(--fs-shadow-bar);flex-direction:column;gap:8px;display:flex;position:sticky;bottom:0}.topbar{-webkit-backdrop-filter:blur(20px)saturate(160%);border-bottom:1px solid var(--fs-line);z-index:5;background:#f6f7f9db;align-items:center;gap:4px;height:60px;padding:0 8px;display:flex;position:sticky;top:0}.topbar__back{cursor:pointer;width:48px;height:48px;color:var(--fs-ink);background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;display:flex}.topbar__title{letter-spacing:-.01em;font-size:17px;font-weight:600}.bottom-nav{height:calc(76px + env(safe-area-inset-bottom));padding:6px 6px calc(10px + env(safe-area-inset-bottom));background:var(--fs-surface);flex:none;display:flex;position:sticky;bottom:0;box-shadow:0 -1px #d8dcd6}.bottom-nav a,.bottom-nav button{color:var(--fs-ink-2);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:3px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.bottom-nav__icon{border-radius:999px;justify-content:center;align-items:center;width:56px;height:32px;display:flex;position:relative}.bottom-nav [aria-current=page]{color:var(--fs-primary);font-weight:700}.bottom-nav [aria-current=page] .bottom-nav__icon{background:var(--fs-primary-tint)}.bottom-nav__count{background:var(--fs-danger-solid);color:#fff;min-width:20px;height:20px;font-family:var(--fs-mono);text-align:center;border:2px solid #fff;border-radius:999px;padding:0 5px;font-size:11px;font-weight:700;line-height:16px;position:absolute;top:-4px;right:2px}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:120px;gap:12px;display:grid}.tiles--compact{grid-auto-rows:104px}.tile{border:1px solid var(--fs-line);border-radius:var(--fs-r-l);background:var(--fs-surface);color:var(--fs-ink);box-shadow:var(--fs-shadow-card);flex-direction:column;justify-content:space-between;padding:14px;text-decoration:none;display:flex;position:relative}.tile:active{background:var(--fs-primary-tint)}.tile__icon{background:var(--fs-surface-3);width:38px;height:38px;color:var(--fs-ink);border-radius:10px;justify-content:center;align-items:center;display:flex}.tile__label{letter-spacing:-.01em;font-size:16px;font-weight:600;line-height:21px}.tile__sub{color:var(--fs-ink-2);font-size:14px;font-weight:400;display:block}.tile .count{position:absolute;top:12px;right:12px}.desk{min-height:100%;display:flex}.sidebar{background:var(--fs-surface-2);border-right:1px solid var(--fs-line);flex-direction:column;flex:0 0 240px;gap:1px;height:100vh;padding:18px 12px;font-size:14px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar__brand{letter-spacing:-.02em;align-items:center;gap:10px;padding:4px 10px 16px;font-size:15px;font-weight:600;display:flex}.sidebar__mark{background:var(--fs-ink);color:#fff;border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.sidebar__group{letter-spacing:.08em;color:var(--fs-ink-3);text-transform:uppercase;padding:16px 10px 6px;font-size:11px;font-weight:600}.sidebar a{color:#2e343c;border-radius:8px;align-items:center;height:34px;padding:0 10px;font-size:14px;text-decoration:none;display:flex}.sidebar a:hover{background:var(--fs-surface-3)}.sidebar a[aria-current=page]{background:var(--fs-surface-3);color:var(--fs-ink);box-shadow:inset 2px 0 0 var(--fs-primary);font-weight:600}.sidebar__user{border-top:1px solid var(--fs-line);flex-direction:column;gap:2px;margin-top:auto;padding:12px 10px 0;font-size:13px;display:flex}.sidebar__user button{color:var(--fs-ink-2);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:13px;line-height:22px}.sidebar__user button:hover{color:var(--fs-ink);text-decoration:underline}.desk__main{flex-direction:column;flex:auto;gap:16px;min-width:0;padding:24px 28px 40px;font-size:14px;display:flex}.desk__title{letter-spacing:-.025em;font-size:24px;font-weight:600;line-height:30px}.desk__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.desk-bottom-nav{display:none}.desk__topbar{z-index:20;-webkit-backdrop-filter:blur(20px)saturate(160%);border-bottom:1px solid var(--fs-line);background:#f6f7f9db;align-items:center;gap:12px;min-height:56px;padding:8px 16px;display:none;position:sticky;top:0}.desk__topbar b{flex:1;font-size:17px}@media (width<=1023px){.desk--teamleider .sidebar{display:none}.desk--teamleider .desk__main{padding:16px 16px 96px}.desk--teamleider .desk-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0}}@media (width<=719px){.desk:not(.desk--teamleider){flex-direction:column}.desk:not(.desk--teamleider) .sidebar{border-right:0;border-bottom:1px solid var(--fs-line);flex:none;height:auto;display:none;position:static}.desk:not(.desk--teamleider) .sidebar.sidebar--open,.desk:not(.desk--teamleider) .desk__topbar{display:flex}.desk:not(.desk--teamleider) .desk__main{padding:16px}}.sheet-backdrop{z-index:20;background:#14181d59;position:fixed;inset:0}.sheet{z-index:21;background:var(--fs-surface);padding:8px 8px calc(16px + env(safe-area-inset-bottom));box-shadow:var(--fs-shadow-sheet);border-radius:16px 16px 0 0;position:fixed;bottom:0;left:0;right:0}.sheet__grip{background:var(--fs-line-strong);border-radius:4px;width:40px;height:4px;margin:4px auto 8px}.sheet__sep{background:var(--fs-line);height:1px;margin:8px 12px}.sheet a,.sheet button{cursor:pointer;width:100%;min-height:var(--fs-target);color:var(--fs-ink);background:0 0;border:0;border-radius:10px;align-items:center;padding:0 12px;font-size:16px;font-weight:700;text-decoration:none;display:flex}.tabs{border-bottom:2px solid var(--fs-line);gap:4px;display:flex}.tabs button{height:40px;color:var(--fs-ink-2);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-2px;padding:0 14px;font-size:15px;font-weight:500}.tabs button[aria-selected=true]{border-bottom-color:var(--fs-primary);color:var(--fs-ink);font-weight:700}.filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filters .input{width:auto;height:40px;font-size:15px}.filters input.input{width:240px}.filters__count{color:var(--fs-ink-2);margin-left:auto;font-size:14px}.table{background:var(--fs-surface);border:1px solid var(--fs-line);border-radius:12px;overflow:hidden}.table__row{border-top:1px solid var(--fs-line);grid-template-columns:1.5fr 1.3fr 1fr 1.4fr 100px;align-items:center;gap:12px;min-height:52px;padding:6px 16px;font-size:14px;display:grid}.table__row--head{background:var(--fs-surface-2);letter-spacing:.04em;min-height:0;color:var(--fs-ink-2);border-top:0;padding:10px 16px;font-size:12px;font-weight:700}button.table__row{text-align:left;cursor:pointer;background:0 0;border-bottom:0;border-left:0;border-right:0;width:100%}button.table__row:hover{background:var(--fs-surface-2)}.table__row[aria-current=true]{background:var(--fs-primary-tint)}.table__row>*{overflow-wrap:anywhere;min-width:0}.chips{flex-wrap:wrap;gap:4px;display:flex}.panel-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;background:#0e11162e;position:fixed;inset:0}.panel{z-index:11;background:var(--fs-surface);border:1px solid var(--fs-line);width:min(480px,100% - 16px);box-shadow:var(--fs-shadow-sheet);border-radius:16px;flex-direction:column;font-size:14px;display:flex;position:fixed;top:8px;bottom:8px;right:8px;overflow:hidden}.panel__head{border-bottom:1px solid var(--fs-line);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 14px;display:flex}.panel__close{cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.panel__body{flex-direction:column;flex:auto;gap:16px;min-height:0;padding:14px 20px;display:flex;overflow-y:auto}.panel__body>*{flex-shrink:0}.panel__foot{border-top:1px solid var(--fs-line);background:var(--fs-surface-2);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}.section-label{letter-spacing:.08em;color:var(--fs-ink-3);text-transform:uppercase;font-size:11px;font-weight:600}.roles-grid{grid-template-columns:1fr 1fr;gap:6px 14px;display:grid}.switch{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.linkbox{background:var(--fs-surface-2);border:1px solid var(--fs-line);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.linkbox code{font-family:var(--fs-mono);overflow-wrap:anywhere;font-size:13px}.auth{background:var(--fs-bg);flex-direction:column;max-width:480px;min-height:100%;margin:0 auto;display:flex}.auth__brand{flex-direction:column;gap:10px;padding:48px 24px 24px;display:flex}.auth__logo{background:var(--fs-ink);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.auth__title{letter-spacing:-.03em;font-size:28px;font-weight:600;line-height:34px}.auth__card{flex-direction:column;flex:auto;display:flex}.auth__form{flex-direction:column;flex:auto;gap:16px;padding:0 24px 24px;display:flex}@media (width>=720px){.auth{justify-content:center}.auth__card{background:var(--fs-surface);border:1px solid var(--fs-line);border-radius:16px;flex:none;overflow:hidden}.auth__card .mobile__footer{box-shadow:none;border-top:1px solid var(--fs-line);position:static}}.card{background:var(--fs-surface);border:1px solid var(--fs-line);border-radius:var(--fs-r-l);box-shadow:var(--fs-shadow-card);flex-direction:column;gap:10px;padding:16px 18px;display:flex}.card--strong{border:2px solid var(--fs-ink)}.mat__nr{font-family:var(--fs-mono);font-size:20px;font-weight:700;line-height:24px}.mat__text{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:18px;line-height:24px;display:-webkit-box;overflow:hidden}.mat__meta{flex-wrap:wrap;gap:6px;display:flex}.mat__sub{color:var(--fs-ink-2);font-size:14px;line-height:20px}.tag{background:var(--fs-neutral-bg);border-radius:8px;align-items:center;gap:6px;height:28px;padding:0 10px;font-size:14px;font-weight:700;display:inline-flex}.badge{white-space:nowrap;border:1px solid;border-radius:6px;align-items:center;gap:6px;height:24px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.badge--info{background:var(--fs-info-bg);color:var(--fs-info);border-color:var(--fs-info-line)}.stepper{grid-template-columns:64px 1fr 64px;align-items:stretch;gap:8px;display:grid}.stepper button{border:1px solid var(--fs-line-strong);background:var(--fs-surface);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;height:64px;display:flex}.stepper button:last-child{background:var(--fs-ink);color:#fff}.stepper button:disabled{border-color:var(--fs-line);color:var(--fs-ink-3);background:var(--fs-neutral-bg)}.stepper__value{border:1.5px solid var(--fs-primary);background:var(--fs-surface);border-radius:14px;justify-content:center;align-items:baseline;gap:6px;height:64px;display:flex;box-shadow:0 0 0 4px #2147b314}.stepper__value[aria-invalid=true]{border:2px solid var(--fs-danger);background:var(--fs-danger-bg)}.stepper__value input{text-align:right;width:100%;min-width:0;height:60px;font-family:var(--fs-mono);letter-spacing:-.03em;background:0 0;border:0;padding:0;font-size:34px;font-weight:500}.stepper__value input:focus{outline:none}.stepper__value span{font-family:var(--fs-mono);flex:1 1 0;font-size:16px;font-weight:700}.line{grid-template-columns:1fr auto;align-items:start;gap:4px 12px;display:grid}.line__qty{font-family:var(--fs-mono);white-space:nowrap;font-size:22px;font-weight:700}.line__qty small{margin-left:4px;font-size:13px}.line__foot{border-top:1px solid var(--fs-line);color:var(--fs-ink-2);grid-column:1/-1;align-items:center;gap:6px;padding-top:8px;font-size:14px;display:flex}.fifo{border:1px solid var(--fs-line-strong);border-radius:var(--fs-r-l);background:var(--fs-surface);flex-direction:column;gap:8px;padding:14px;display:flex}.fifo__batch{border:2px solid var(--fs-ink);border-radius:var(--fs-r-m);font-family:var(--fs-mono);flex-direction:column;gap:2px;padding:10px 12px;font-size:15px;display:flex}.radio-card{border:1px solid var(--fs-line-strong);border-radius:var(--fs-r-m);background:var(--fs-surface);cursor:pointer;align-items:center;gap:12px;min-height:64px;padding:10px 14px;display:flex}.radio-card input{width:24px;height:24px;accent-color:var(--fs-primary);margin:0}.radio-card:has(input:checked){border:2px solid var(--fs-primary);background:var(--fs-primary-tint)}.radio-card[data-invalid=true]{border:2px solid var(--fs-danger)}.result{border:1px solid var(--fs-line);background:var(--fs-surface);text-align:left;cursor:pointer;width:100%;color:var(--fs-ink);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex;box-shadow:0 1px 2px #0e11160a}.result mark{color:inherit;text-underline-offset:3px;background:0 0;font-weight:700;text-decoration:underline}.search{position:relative}.search .input{padding-left:46px}.search svg{color:var(--fs-ink-2);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.hero{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:12px 0 4px;display:flex}.hero__check{background:var(--fs-ink);color:#fff;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.hero__title{letter-spacing:-.03em;font-size:26px;font-weight:600;line-height:32px}.refbox{border-radius:var(--fs-r-m);background:var(--fs-surface-2);color:var(--fs-ink-2);justify-content:center;align-items:center;gap:8px;padding:10px;font-size:14px;display:flex}.refbox b{font-family:var(--fs-mono);color:var(--fs-ink);font-size:16px}.notice--found{background:var(--fs-success-bg);border:1px solid var(--fs-success-line);color:var(--fs-success)}.notice__title{font-weight:700}.notice__text,.notice--error .notice__text{color:var(--fs-ink)}.textarea{border:1px solid var(--fs-line-strong);border-radius:var(--fs-r-m);background:var(--fs-surface);resize:vertical;width:100%;min-height:72px;padding:12px 16px;font-size:16px}.badge--s{gap:6px;height:26px;padding:0 10px 0 8px;font-size:13px}.badge--success{background:var(--fs-success-bg);color:var(--fs-success);border-color:var(--fs-success-line)}.badge--warning{background:var(--fs-warning-bg);color:var(--fs-warning);border-color:var(--fs-warning-line)}.badge--danger{background:var(--fs-danger-bg);color:var(--fs-danger);border-color:var(--fs-danger-line)}.badge--danger-solid{background:var(--fs-danger-solid);color:#fff;border-color:var(--fs-danger-solid)}.badge--defect{background:var(--fs-defect-bg);color:var(--fs-defect);border-color:var(--fs-defect-line)}.badge--defect-solid{background:var(--fs-defect-solid);color:#fff;border-color:var(--fs-defect-solid)}.badge--neutral{background:var(--fs-neutral-bg);color:var(--fs-neutral);border-color:var(--fs-neutral-line)}.steps{flex-wrap:wrap;gap:8px;display:flex}.steps span{border:1px solid var(--fs-line-strong);background:var(--fs-surface);border-radius:999px;align-items:center;height:28px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.steps span[aria-current=step]{background:var(--fs-ink);color:#fff;border-color:var(--fs-ink)}.steps span[data-done=true]{background:var(--fs-success-bg);border-color:var(--fs-success-line);color:var(--fs-success)}.segmented{border:1px solid var(--fs-line-strong);border-radius:10px;align-self:flex-start;display:inline-flex;overflow:hidden}.segmented button{background:var(--fs-surface);cursor:pointer;border:0;height:40px;padding:0 16px;font-size:15px}.segmented button[aria-pressed=true]{background:var(--fs-ink);color:#fff;font-weight:700}.dropzone{border:2px dashed var(--fs-line-strong);border-radius:var(--fs-r-l);background:var(--fs-surface);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:150px;padding:24px;display:flex}.dropzone[data-over=true]{border-color:var(--fs-primary);background:var(--fs-primary-tint)}.section-title{letter-spacing:.06em;color:var(--fs-ink-2);text-transform:uppercase;font-size:12px;font-weight:700}.grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:14px;display:grid}@media (width<=1100px){.grid-2{grid-template-columns:minmax(0,1fr)}}.checks{flex-direction:column;gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.checks li{align-items:flex-start;gap:8px;display:flex}.checks li svg{flex:none;margin-top:2px}.check--ok svg{color:var(--fs-success)}.check--warn svg{color:var(--fs-warning)}.check--info svg{color:var(--fs-info)}.check--fout svg{color:var(--fs-danger)}.stats{flex-wrap:wrap;gap:24px;display:flex}.stat{flex-direction:column;flex:1 1 0;min-width:110px;display:flex}.stat__n{font-family:var(--fs-mono);font-size:28px;font-weight:700;line-height:34px}.stat__label{font-size:14px;font-weight:700}.stat__sub{color:var(--fs-ink-2);font-size:12px;line-height:16px}.dtable{border-collapse:separate;border-spacing:0;background:var(--fs-surface);border:1px solid var(--fs-line);width:100%;box-shadow:var(--fs-shadow-card);border-radius:14px;font-size:13.5px;overflow:hidden}.dtable th{text-align:left;background:var(--fs-surface-2);color:var(--fs-ink-3);border-bottom:1px solid var(--fs-line);padding:10px 16px;font-size:12px;font-weight:500}.dtable td{vertical-align:top;border-top:1px solid #f0f1f4;padding:11px 16px}.dtable tbody tr:first-child td{border-top:0}.dtable tr[data-tone=warn] td{background:#fffaf0}.dtable tr[data-tone=fout] td{background:#fff6f5}.dtable tr[data-tone=fout] td:first-child{box-shadow:inset 2px 0 0 var(--fs-danger-solid)}.dtable tbody tr.clickable{cursor:pointer}.dtable tbody tr.clickable:hover td{background:var(--fs-surface-2)}.dtable tbody tr[aria-selected=true] td{background:#f5f8ff}.dtable tbody tr[aria-selected=true] td:first-child{box-shadow:inset 2px 0 0 var(--fs-primary)}.dtable .mono{white-space:nowrap;font-size:13px}.dtable-wrap{border-radius:14px;overflow-x:auto}.chipbar{flex-wrap:wrap;gap:8px;display:flex}.chipbar button{border:1px solid var(--fs-line-strong);background:var(--fs-surface);cursor:pointer;border-radius:10px;height:36px;padding:0 14px;font-size:14px}.chipbar button[aria-pressed=true]{background:var(--fs-ink);color:#fff;border-color:var(--fs-ink);font-weight:700}.toast{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:#fff;max-width:min(640px,100% - 32px);box-shadow:var(--fs-shadow-sheet);background:#0e1116eb;border-radius:12px;align-items:center;gap:10px;padding:10px 12px 10px 16px;font-size:14px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.history{flex-direction:column;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.history li{border-top:1px solid var(--fs-line);grid-template-columns:118px 1fr;gap:10px;padding:8px 0;display:grid}.history li:first-child{border-top:0}.boxes{grid-template-columns:1fr 1fr;gap:10px;display:grid}.box{border:1px solid var(--fs-line);border-radius:12px;flex-direction:column;gap:6px;padding:12px;font-size:14px;display:flex}.history li>span:first-child{white-space:nowrap}.doc{color:#000;background:#fff;flex-direction:column;gap:16px;max-width:820px;margin:0 auto;padding:32px;display:flex}.doc__head{border-bottom:2px solid #000;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:12px;display:flex}.doc__qr{flex:none;width:120px;height:120px}.doc__qr svg{width:100%;height:100%}.doc__meta{grid-template-columns:auto 1fr auto 1fr;gap:4px 14px;font-size:14px;display:grid}.doc table{border-collapse:collapse;width:100%;font-size:13px}.doc th,.doc td{text-align:left;vertical-align:top;border:1px solid #999;padding:5px 7px}.doc th{background:#eee}.doc__pallet{margin-top:8px;font-weight:800}.doc__sign{grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;font-size:13px;display:grid}.doc__sign div{border-top:1px solid #000;height:64px;padding-top:6px}.doc__concept{color:#a3201a;letter-spacing:.1em;font-weight:800}@media print{@page{size:A4;margin:12mm}body{background:#fff}.no-print{display:none!important}.doc{max-width:none;padding:0}}.kv{grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:14px;display:grid}.kv dt{color:var(--fs-ink-2)}.kv dd{text-align:right;overflow-wrap:anywhere;margin:0;font-weight:500}.tel-card{border:2px solid var(--fs-line);border-radius:var(--fs-r-m);background:var(--fs-surface);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;flex-direction:column;padding:0;display:flex;overflow:hidden}.tel-card__strip{justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:14px;font-weight:700;display:flex}.tel-card__body{flex-direction:column;gap:2px;padding:10px 12px 12px;display:flex}.tel-card[data-status=verschil]{border-color:var(--fs-danger-line)}.tel-card[data-status=verschil] .tel-card__strip{background:var(--fs-danger-bg);color:var(--fs-danger)}.tel-card[data-status=klopt]{border-color:var(--fs-success-line)}.tel-card[data-status=klopt] .tel-card__strip{background:var(--fs-success-bg);color:var(--fs-success)}.tel-card[data-status=nog_tellen]{border-style:dashed;border-color:var(--fs-line-strong)}.tel-card[data-status=nog_tellen] .tel-card__strip{color:var(--fs-ink-2)}.tel-sum{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.tel-sum>div{border:1px solid var(--fs-line);border-radius:var(--fs-r-m);background:var(--fs-surface);flex-direction:column;align-items:center;padding:10px 4px;font-size:13px;display:flex}.tel-sum b{font-size:24px;font-family:var(--fs-mono)}.tel-sum [data-tone=klopt]{background:var(--fs-success-bg);border-color:var(--fs-success-line);color:var(--fs-success)}.tel-sum [data-tone=verschil]{background:var(--fs-danger-bg);border-color:var(--fs-danger-line);color:var(--fs-danger)}@media (width<=900px){.t04-grid{grid-template-columns:1fr!important}}.label-strip{background:var(--fs-ink);color:#fff;border-radius:8px;align-items:flex-start;gap:10px;padding:8px 12px;display:flex}.label-strip svg{flex:none;margin-top:2px}.label-strip b{font-size:15px;line-height:20px;display:block}.label-strip span{color:#d5d9de;font-size:13px;display:block}.badge--recall{background:var(--fs-recall-bg);color:var(--fs-recall);border-color:var(--fs-recall-line)}.sidebar .count{background:var(--fs-ink);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.pick-list{border:1px solid var(--fs-line-strong);border-radius:var(--fs-r-m);background:var(--fs-surface);flex-direction:column;display:flex;overflow:hidden}.pick-list__item{text-align:left;border:0;border-top:1px solid var(--fs-line);cursor:pointer;background:0 0;min-height:44px;padding:10px 14px;font-size:15px}.pick-list__item:first-child{border-top:0}.pick-list__item:hover,.pick-list__item:focus-visible{background:var(--fs-primary-tint)}.regels{flex-direction:column;gap:8px;display:flex}.regel{border:1px solid var(--fs-line);background:var(--fs-surface);border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:10px 14px;display:grid}.regel__sn{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.qty-input{width:110px;height:44px}.link-button{color:var(--fs-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:500}.link-button:hover{text-underline-offset:3px;text-decoration:underline}.labels-page{background:var(--fs-bg);flex-direction:column;gap:12px;min-height:100vh;padding:16px;display:flex}.labels-page__bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.labels-sheet{background:#fff;grid-template-columns:repeat(3,70mm);grid-auto-rows:37mm;width:210mm;display:grid}.label-cell{border:1px dashed var(--fs-line);align-items:center;gap:3mm;padding:3mm;font-size:9pt;line-height:1.2;display:flex;overflow:hidden}.label-cell__qr{flex:0 0 26mm;width:26mm;height:26mm}.label-cell__qr svg{width:100%;height:100%}.label-cell__text{overflow-wrap:anywhere;flex-direction:column;gap:1mm;min-width:0;display:flex}.label-cell__text b{font-size:10pt}@page labels{size:A4;margin:10.5mm 0 0}@media print{.labels-page{background:#fff;padding:0}.labels-sheet{page:labels}.label-cell{border:0}}.next-step{background:var(--fs-surface);border:1px solid var(--fs-line);border-radius:12px;align-items:center;gap:14px;padding:14px 16px;display:flex;box-shadow:0 1px 2px #0e11160a}.next-step__icon{background:var(--fs-primary-tint);width:32px;height:32px;color:var(--fs-primary);border-radius:9px;flex:none;place-items:center;display:grid}.next-step__title{font-weight:600}.next-step__text{color:var(--fs-ink-2);font-size:13px}.kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.kpi{background:var(--fs-surface);border:1px solid var(--fs-line);box-shadow:var(--fs-shadow-card);color:var(--fs-ink);border-radius:14px;flex-direction:column;gap:4px;padding:14px 16px;text-decoration:none;display:flex}.kpi__label{color:var(--fs-ink-3);font-size:12px}.kpi__n{letter-spacing:-.03em;font-size:26px;font-weight:500;line-height:30px}.kpi__sub{color:var(--fs-ink-2);font-size:12px}.tasklist{background:var(--fs-surface);border:1px solid var(--fs-line);box-shadow:var(--fs-shadow-card);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.tasklist a{color:var(--fs-ink);border-top:1px solid #f0f1f4;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;display:flex}.tasklist a:first-child{border-top:0}.tasklist a:hover{background:var(--fs-surface-2)}.tasklist__title{font-weight:500}.tasklist__sub{color:var(--fs-ink-2);font-size:12px}.demo-banner{z-index:25;background:var(--fs-ink);color:#e6e8ec;letter-spacing:.01em;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 6px;min-height:26px;padding:3px 12px;font-size:12px;display:flex;position:sticky;top:0}.demo-banner b{color:#fff;font-weight:600}.switcher{position:relative}.switcher__button{border:1px solid var(--fs-line);background:var(--fs-surface);cursor:pointer;text-align:left;width:100%;color:var(--fs-ink);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;display:flex}.switcher__button:hover{background:var(--fs-surface-3)}.switcher__menu{z-index:30;background:var(--fs-surface);border:1px solid var(--fs-line);box-shadow:var(--fs-shadow-sheet);border-radius:12px;flex-direction:column;max-height:60vh;padding:6px;display:flex;position:absolute;bottom:calc(100% + 6px);left:0;right:0;overflow-y:auto}.switcher__menu button{text-align:left;cursor:pointer;color:var(--fs-ink);background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:flex-start;gap:0;padding:8px 10px;display:flex}.switcher__menu button:hover,.switcher__menu button[aria-current=true]{background:var(--fs-surface-3)}.switcher__menu small{color:var(--fs-ink-3);font-size:12px}.switcher__label{border-top:1px solid var(--fs-line);letter-spacing:.04em;text-transform:uppercase;color:var(--fs-ink-3);margin-top:4px;padding:10px 10px 4px;font-size:11px;font-weight:600}.demo-banner__back{white-space:nowrap;color:#fff;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:6px;margin-left:4px;padding:1px 8px}.demo-banner__back:hover{background:#ffffff1f}.label-strip{background:var(--fs-ink);color:#f2f3f5;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.label-strip__meta{color:#b9bec7;font-size:12px;display:block}.label-strip__remove{color:#fff;cursor:pointer;font:inherit;background:0 0;border:1px solid #ffffff4d;border-radius:6px;padding:2px 8px;font-size:13px}.capabilities{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.capability{background:var(--fs-surface);border:1px solid var(--fs-line);color:var(--fs-ink);border-radius:12px;flex-direction:column;gap:6px;padding:12px 14px;text-decoration:none;display:flex}.capability:hover{border-color:var(--fs-line-strong)}.capability__title{font-weight:600}.capability__meta{color:var(--fs-ink-3);align-items:center;gap:8px;font-size:12px;display:flex}.capability__state{background:var(--fs-surface-3);color:var(--fs-ink-2);border-radius:6px;padding:1px 7px;font-weight:500}.capability__state--ok{background:var(--fs-primary-tint);color:var(--fs-primary)}.camera{border-radius:var(--fs-r-l);color:#fff;background:#2b3036;justify-content:center;align-items:center;height:210px;display:flex;position:relative;overflow:hidden}.camera__video{object-fit:cover;opacity:.85;width:100%;height:100%;position:absolute;inset:0}.camera__label{font-family:var(--fs-mono);letter-spacing:.08em;opacity:.8;font-size:11px;position:absolute;top:10px;left:12px}.camera__frame{border:3px solid #fff;border-radius:12px;justify-content:center;align-items:center;width:70%;height:90px;display:flex;position:relative}.camera__frame--found{border-color:var(--fs-success-line)}.camera__frame--found svg{background:var(--fs-success-solid);border-radius:999px;width:48px;height:48px;padding:6px}.camera__hint{text-align:center;text-shadow:0 1px 2px #0009;font-size:15px;font-weight:700;position:absolute;bottom:12px;left:0;right:0}.offline-strip{z-index:60;background:var(--fs-ink);color:#f2f3f5;box-shadow:var(--fs-shadow-sheet);border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:14px;display:flex;position:fixed;bottom:12px;left:12px;right:12px}.offline-strip .link-button{color:#fff}
