:root{--sans:var(--font-sans),ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:var(--font-mono),ui-monospace,"SF Mono",SFMono-Regular,Menlo,monospace;--r-sm:8px;--r:10px;--r-lg:14px;--r-xl:20px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sidebar-w:250px}:root,[data-theme=dark]{color-scheme:dark;--bg:#131110;--panel:#1a1817;--panel-2:#211e1c;--panel-3:#2b2723;--inset:#161413;--border:rgba(255,251,240,.07);--border-2:rgba(255,251,240,.13);--text:#ece9e3;--muted:#a39d92;--faint:#746f64;--accent:#e07e4f;--accent-2:#eb8f61;--accent-soft:rgba(224,126,79,.14);--accent-line:rgba(224,126,79,.5);--on-accent:#221007;--green:#5abe85;--yellow:#d9a054;--red:#e26a5c;--blue:#7aa7f0;--green-soft:rgba(90,190,133,.11);--yellow-soft:rgba(217,160,84,.11);--red-soft:rgba(226,106,92,.11);--gray-soft:rgba(163,157,146,.09);--green-line:rgba(90,190,133,.3);--yellow-line:rgba(217,160,84,.3);--red-line:rgba(226,106,92,.3);--tooltip-bg:#0c0b0a;--thumb:#f2ede5;--ring:0 0 0 3px var(--accent-soft);--sh-1:0 1px 2px rgba(0,0,0,.3);--sh-2:0 4px 16px -4px rgba(0,0,0,.45);--sh-3:0 16px 48px -12px rgba(0,0,0,.6)}[data-theme=light]{color-scheme:light;--bg:#f2f0eb;--panel:#fbfaf7;--panel-2:#f3f0ea;--panel-3:#e8e4dc;--inset:#f6f4ef;--border:rgba(46,38,28,.1);--border-2:rgba(46,38,28,.18);--text:#23201a;--muted:#6f6a5f;--faint:#9b9587;--accent:#c25e2c;--accent-2:#b0511f;--accent-soft:rgba(194,94,44,.12);--accent-line:rgba(194,94,44,.45);--on-accent:#fff6ef;--green:#257d54;--yellow:#96690f;--red:#c0392e;--blue:#2f6bd8;--green-soft:rgba(37,125,84,.1);--yellow-soft:rgba(150,105,15,.11);--red-soft:rgba(192,57,46,.09);--gray-soft:rgba(111,106,95,.1);--green-line:rgba(37,125,84,.3);--yellow-line:rgba(150,105,15,.3);--red-line:rgba(192,57,46,.3);--tooltip-bg:#23201a;--thumb:#ffffff;--sh-1:0 1px 2px rgba(35,30,20,.05);--sh-2:0 6px 18px -6px rgba(35,30,20,.1);--sh-3:0 16px 44px -10px rgba(35,30,20,.16)}[data-theme=light] .tip:after{color:#fbfaf7}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font:14px/1.55 var(--sans);font-feature-settings:"ss01" on;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--accent-soft);color:var(--text)}:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px;border-radius:4px}a{color:var(--accent);text-decoration:none;transition:color .12s ease}a:hover{color:var(--accent-2)}h1,h2,h3,h4{margin:0 0 var(--sp-3);line-height:1.2;letter-spacing:-.015em;font-weight:600}h1{font-size:24px}h2{font-size:20px}h3{font-size:14.5px;letter-spacing:-.005em}p{margin:0 0 var(--sp-3)}code{font-size:.88em;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;padding:1px 6px}.mono,code{font-family:var(--mono)}.mono{font-size:.96em;letter-spacing:-.01em}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}*{scrollbar-width:thin;scrollbar-color:var(--panel-3) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--panel-3);border-radius:999px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--faint)}.layout{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh}.sidebar{background:var(--bg);border-right:1px solid var(--border);padding:var(--sp-4) var(--sp-3);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px var(--sp-4);margin-bottom:var(--sp-2)}.brand .mark{width:32px;height:32px;border-radius:9px;flex:none;display:grid;place-items:center;background:var(--accent);color:var(--on-accent);font-size:16px;font-weight:700;letter-spacing:-.02em}.brand .name{font-size:15px;font-weight:650;letter-spacing:-.02em;display:flex;flex-direction:column}.brand .name small{display:block;font-size:9.5px;font-weight:500;color:var(--faint);letter-spacing:.14em;text-transform:uppercase;font-family:var(--mono)}.nav{display:flex;flex-direction:column;gap:1px;overflow-y:auto;flex:1 1;margin:0 -4px;padding:0 4px}.nav .group-label{font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);padding:var(--sp-4) 10px 7px}.nav .group-label:first-child{padding-top:4px}.nav a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--r-sm);color:var(--muted);font-weight:500;font-size:13.5px;position:relative;transition:background .12s ease,color .12s ease}.nav a svg{width:16px;height:16px;flex:none;opacity:.75}.nav a:hover{background:var(--panel-2);color:var(--text)}.nav a.active{background:var(--accent-soft);color:var(--accent)}.nav a.active svg{opacity:1}.user-box{margin-top:var(--sp-3);padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--r);background:var(--panel)}.user-box .u-row{display:flex;align-items:center;gap:10px}.user-box .avatar{width:30px;height:30px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:11px;font-weight:600;font-family:var(--mono);background:var(--panel-3);color:var(--text);border:1px solid var(--border-2)}.user-box .u-name{font-weight:600;font-size:12.5px;line-height:1.2}.user-box .u-role{font-size:10.5px;color:var(--faint);text-transform:uppercase;letter-spacing:.08em;font-family:var(--mono);margin-top:1px}.theme-toggle{display:inline-flex;align-items:center;gap:8px}.theme-toggle svg{width:15px;height:15px;flex:none}.content{padding:36px 40px 72px;max-width:1380px;width:100%;min-width:0}.page-head{margin-bottom:var(--sp-5)}.page-head .row{justify-content:space-between;align-items:flex-start}.page-head h2{font-size:29px;font-weight:650;letter-spacing:-.035em;margin-bottom:4px}.page-head .sub{color:var(--muted);font-size:13px;margin:0}.page-head .sub b,.page-head .sub strong{font-family:var(--mono);font-weight:600;color:var(--text);font-size:.96em}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-4) var(--sp-5);margin-bottom:var(--sp-4)}.card h3{margin-bottom:var(--sp-2)}.card.flush{padding:0;overflow:hidden}.card-head{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--border)}.card-head h3{margin:0}.table-foot{display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap;padding:11px 20px;border-top:1px solid var(--border);font-size:12px;color:var(--muted)}.table-foot b{font-family:var(--mono);color:var(--text);font-weight:600}.grid{display:grid;grid-gap:var(--sp-3);gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}.kpi-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--r-lg);padding:15px 18px 13px;position:relative;overflow:hidden;transition:border-color .15s ease}.kpi-card:hover{border-color:var(--border-2)}.kpi-card .k-label{font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);display:flex;align-items:center;gap:7px}.kpi-card .k-label svg{width:14px;height:14px;opacity:.7}.kpi{font-family:var(--mono);font-size:26px;font-weight:600;letter-spacing:-.03em;margin-top:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.15}.kpi-card .k-foot{font-size:11.5px;color:var(--muted);margin-top:4px}table{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--panel);font-family:var(--mono);color:var(--faint);font-weight:500;font-size:10px;letter-spacing:.12em;text-transform:uppercase;padding:10px 14px;white-space:nowrap}tbody td,thead th{text-align:left;border-bottom:1px solid var(--border)}tbody td{padding:11px 14px;font-size:13px}tbody tr{transition:background .1s ease}tbody tr:hover{background:var(--panel-2)}tbody tr:last-child td{border-bottom:none}.card.flush table tbody td:first-child,.card.flush table thead th:first-child{padding-left:20px}.card.flush table tbody td:last-child,.card.flush table thead th:last-child{padding-right:20px}td.num,th.num{text-align:right}td.num{font-family:var(--mono);font-size:12.5px;letter-spacing:-.01em}td .cell-sub{display:block;font-size:11.5px;color:var(--muted);margin-top:1px}.row-link{color:inherit;font-weight:550}.row-link:hover{color:var(--accent)}.zero{color:var(--faint)}.badge{display:inline-flex;align-items:center;gap:6px;padding:2.5px 9px;border-radius:999px;font-size:11.5px;font-weight:550;border:1px solid transparent;line-height:1.5;white-space:nowrap}.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}.badge.green{background:var(--green-soft);color:var(--green);border-color:var(--green-line)}.badge.yellow{background:var(--yellow-soft);color:var(--yellow);border-color:var(--yellow-line)}.badge.red{background:var(--red-soft);color:var(--red);border-color:var(--red-line)}.badge.gray{background:var(--gray-soft);color:var(--muted);border-color:var(--border-2)}.badge.accent{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-line)}.badge.plain:before{display:none}input,select,textarea{font:inherit;font-size:13.5px;color:var(--text);background:var(--inset);border:1px solid var(--border-2);border-radius:var(--r);padding:8px 11px;transition:border-color .12s ease,box-shadow .12s ease}input:hover,select:hover,textarea:hover{border-color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-line);box-shadow:var(--ring)}input::placeholder,textarea::placeholder{color:var(--faint)}input[type=file]{padding:6px;font-size:12.5px;color:var(--muted)}::-webkit-file-upload-button{font:inherit;font-size:12.5px;font-weight:550;cursor:pointer;color:var(--text);background:var(--panel-2);border:1px solid var(--border-2);border-radius:8px;padding:5px 12px;margin-right:10px;-webkit-transition:background .12s ease,border-color .12s ease;transition:background .12s ease,border-color .12s ease}::file-selector-button{font:inherit;font-size:12.5px;font-weight:550;cursor:pointer;color:var(--text);background:var(--panel-2);border:1px solid var(--border-2);border-radius:8px;padding:5px 12px;margin-right:10px;transition:background .12s ease,border-color .12s ease}::-webkit-file-upload-button:hover{background:var(--panel-3)}::file-selector-button:hover{background:var(--panel-3)}input[type=date],input[type=month],input[type=number],input[type=time]{font-family:var(--mono);font-size:12.5px}label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:500;color:var(--muted)}button,label input,label select,label textarea{color:var(--text)}button{font:inherit;cursor:pointer;font-weight:550;font-size:13px;background:var(--panel-2);border:1px solid var(--border-2);border-radius:var(--r);padding:7px 14px;min-height:33px;transition:background .12s ease,border-color .12s ease,transform .05s ease,box-shadow .12s ease}button:hover{background:var(--panel-3);border-color:var(--faint)}button:active{transform:translateY(1px)}button:focus-visible{outline:none;box-shadow:var(--ring)}button.primary{background:var(--accent);color:var(--on-accent);border-color:transparent;font-weight:600}button.primary:hover{background:var(--accent-2);border-color:transparent}button:disabled{opacity:.45;cursor:not-allowed;transform:none}button.danger{background:var(--red);color:#fff7f5;border-color:transparent}button.danger:hover{filter:brightness(1.08);background:var(--red)}button.danger-ghost{background:transparent;border:1px solid var(--border-2);color:var(--red)}button.danger-ghost:hover{border-color:var(--red-line);background:var(--red-soft)}button.ghost{background:transparent;border-color:var(--border-2)}button.ghost:hover{background:var(--panel-2)}button.btn-sm{padding:5px 11px;font-size:12.5px;min-height:28px;border-radius:var(--r-sm)}button.btn-sm.on{border-color:var(--accent-line);color:var(--accent);background:var(--accent-soft)}button.btn-sm.on-red{border-color:var(--red-line);color:var(--red);background:var(--red-soft)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:20px;padding:0;margin:0;background:transparent;border:none;cursor:pointer}input[type=range]:focus{box-shadow:none}input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(to right,var(--accent) var(--fill,50%),var(--panel-3) var(--fill,50%))}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:15px;height:15px;border-radius:50%;margin-top:-5.5px;background:var(--thumb);border:none;box-shadow:0 1px 4px rgba(0,0,0,.35);-webkit-transition:transform .12s ease;transition:transform .12s ease}input[type=range]:active::-webkit-slider-thumb{transform:scale(1.15)}input[type=range]::-moz-range-track{height:4px;border-radius:999px;background:var(--panel-3)}input[type=range]::-moz-range-progress{height:4px;border-radius:999px;background:var(--accent)}input[type=range]::-moz-range-thumb{width:15px;height:15px;border-radius:50%;border:none;background:var(--thumb);box-shadow:0 1px 4px rgba(0,0,0,.35)}.slider-line{margin-bottom:14px}.slider-line .sl-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:2px}.slider-line .sl-label{font-size:13px;font-weight:550;color:var(--text)}.slider-line .sl-value{font-family:var(--mono);font-size:13px;font-weight:600}.slider-line .sl-range{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--faint);margin-top:-2px}input[type=checkbox].switch{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:36px;height:21px;border-radius:999px;background:var(--panel-3);border:1px solid var(--border-2);position:relative;cursor:pointer;padding:0;margin:0;flex:none;transition:background .16s ease,border-color .16s ease}input[type=checkbox].switch:before{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:var(--faint);transition:transform .18s cubic-bezier(.2,.9,.3,1.2),background .16s ease}input[type=checkbox].switch:hover{border-color:var(--faint)}input[type=checkbox].switch:checked{background:var(--accent);border-color:transparent}input[type=checkbox].switch:checked:before{transform:translateX(15px);background:var(--on-accent)}input[type=checkbox].switch:focus-visible{outline:2px solid var(--accent-line);outline-offset:2px;box-shadow:none}input[type=checkbox].switch:disabled{opacity:.4;cursor:not-allowed}.split{display:grid;grid-template-columns:minmax(0,1fr) 372px;grid-gap:var(--sp-4);gap:var(--sp-4);align-items:start}@media (max-width:1140px){.split{grid-template-columns:1fr}}.chip{position:relative}.chip input{position:absolute;opacity:0;pointer-events:none;width:0;height:0;margin:0}.chip:has(input:checked){color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 13px;border-radius:999px;font-size:12.5px;font-weight:550;line-height:1.4;color:var(--muted);border:1px solid var(--border-2);cursor:pointer;transition:color .12s ease,border-color .12s ease,background .12s ease;min-height:0}.chip,.chip:hover{background:transparent}.chip:hover{color:var(--text);border-color:var(--faint)}.chip.on{color:var(--accent);background:var(--accent-soft)}.chip.on,.chip.on:hover{border-color:var(--accent-line)}.chip.on:hover{color:var(--accent-2)}.muted{color:var(--muted)}.faint{color:var(--faint)}.row{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}.spacer{flex:1 1}.stack{display:flex;flex-direction:column;gap:var(--sp-3)}.divider{height:1px;background:var(--border);margin:var(--sp-4) 0;border:none}.empty{text-align:center;padding:var(--sp-6) var(--sp-4)}.empty,details.adv summary{color:var(--muted);font-size:13px}details.adv summary{cursor:pointer;font-weight:550;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content}details.adv summary:hover{color:var(--text)}details.adv[open] summary{margin-bottom:var(--sp-2)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:var(--sp-4);position:relative;overflow:hidden}.login-bg{width:100%;height:100%;z-index:0}.login-bg,.login-wrap:before{position:absolute;inset:0;pointer-events:none}.login-wrap:before{content:"";z-index:1;background:radial-gradient(560px 430px at 50% 47%,var(--bg) 0,color-mix(in srgb,var(--bg) 55%,transparent) 58%,transparent 100%)}.login{width:100%;max-width:384px;position:relative;z-index:2}.login .brand{justify-content:center;padding-bottom:var(--sp-3)}.login .brand .mark{width:38px;height:38px;border-radius:11px;font-size:18px}.login .card{box-shadow:var(--sh-3);padding:var(--sp-5);background:color-mix(in srgb,var(--panel) 90%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--border-2)}.subnav{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:var(--sp-5);border-bottom:1px solid var(--border);padding:0;width:100%}.subnav a{padding:8px 12px 10px;font-size:13.5px;font-weight:550;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .12s ease,border-color .12s ease}.subnav a.active,.subnav a:hover{color:var(--text)}.subnav a.active{border-bottom-color:var(--accent)}.tip{position:relative;cursor:help;outline:none}.tip-mark{margin-left:5px;font-size:10px;opacity:.55;font-family:var(--mono);font-style:normal}.tip:focus .tip-mark,.tip:hover .tip-mark{opacity:1}.tip:after{content:attr(data-tip);position:absolute;left:0;top:150%;z-index:50;width:max-content;max-width:260px;white-space:normal;background:var(--tooltip-bg);color:var(--text);text-align:left;font-family:var(--sans);font-weight:400;text-transform:none;letter-spacing:0;border:1px solid var(--border-2);border-radius:var(--r-sm);padding:9px 11px;box-shadow:var(--sh-3);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease;pointer-events:none;line-height:1.45;font-size:12px}.tip:focus:after,.tip:hover:after{opacity:1;visibility:visible;transform:translateY(0)}.prio-list{list-style:none;margin:var(--sp-2) 0;padding:0;display:grid;grid-gap:8px;gap:8px}.prio-row{display:flex;align-items:center;gap:var(--sp-3);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r);padding:11px 14px;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:border-color .12s ease,box-shadow .12s ease}.prio-row[draggable=true]{cursor:-webkit-grab;cursor:grab}.prio-row.dragging{opacity:.35}.prio-row.over{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.prio-handle{opacity:.4;font-size:14px;line-height:1;cursor:-webkit-grab;cursor:grab;letter-spacing:-.05em}.prio-rank{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--faint);min-width:20px}.prio-name{font-weight:550;font-size:13.5px}.prio-code{margin-left:auto;font-size:11px;font-family:var(--mono);color:var(--faint)}.tabs{gap:7px;flex-wrap:wrap;margin-bottom:12px}.tab,.tabs{display:flex}.tab{flex-direction:row;gap:8px;align-items:center;background:transparent;border:1px solid var(--border-2);border-radius:999px;padding:5px 13px;cursor:pointer;color:var(--muted);min-width:0;min-height:0;transition:color .12s ease,border-color .12s ease,background .12s ease}.tab .badge{padding:1px 7px;font-size:10px;gap:4px}.tab:hover{color:var(--text);background:var(--panel-2);border-color:var(--faint)}.tab.active{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line)}.tab.active .tab-meta{color:var(--accent);opacity:.75}.tab-name{font-weight:600;font-size:13px;white-space:nowrap}.tab-meta{font-size:11px;color:var(--muted);display:flex;align-items:center;white-space:nowrap;font-family:var(--mono)}.seg{display:inline-flex;gap:2px;padding:3px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--r)}.seg a,.seg button{border:none;background:transparent;box-shadow:none;min-height:0;padding:5px 13px;font-size:12.5px;font-weight:550;border-radius:7px;color:var(--muted);cursor:pointer;transition:color .12s ease,background .12s ease}.seg a:hover,.seg button:hover{color:var(--text);background:transparent;border:none}.seg a.active,.seg a.active:hover,.seg button.active,.seg button.active:hover{background:var(--text);color:var(--bg)}.table-wrap{overflow:auto;max-height:calc(100dvh - 150px);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--panel)}.table-wrap thead th{z-index:3;padding:9px 12px;background:var(--panel-2)}.table-wrap tbody td{padding:8px 12px}.table-wrap td.col-sku,.table-wrap th.col-sku{position:-webkit-sticky;position:sticky;left:0;z-index:2;background:var(--panel);box-shadow:1px 0 0 var(--border);min-width:230px}.table-wrap thead th.col-sku{z-index:4;background:var(--panel-2)}.table-wrap tbody tr:hover td{background:var(--panel-2)}.table-wrap tr.group-row td{background:var(--panel-2);cursor:pointer}.table-wrap tbody tr.group-row:hover td{background:var(--panel-3)}.table-wrap tr.sub-row td{background:var(--panel-2)}.table-wrap tr.dim-row td{color:var(--faint)}.table-wrap tr.dim-row .sku-link,.table-wrap tr.dim-row .sku-name{color:var(--muted)}.table-wrap th:last-child .tip:after,.table-wrap th:nth-last-child(2) .tip:after{left:auto;right:0}.qty-edit{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:nowrap}.qty-edit input{padding:5px 8px;font-size:12.5px}.qty-edit input[name=finalQty]{width:62px;text-align:right;font-family:var(--mono)}.qty-edit input[name=reason]{width:92px;transition:width .15s ease}.qty-edit:focus-within input[name=reason]{width:170px}.qty-edit button{padding:4px 9px;min-height:0}.qty-edit input.overridden{border-color:var(--yellow-line);background:var(--yellow-soft)}.qty-edit input.warn{border-color:var(--red-line);background:var(--red-soft)}.sku-cell{display:flex;align-items:center;gap:var(--sp-2)}.sku-code,.sku-link{font-weight:550;font-family:var(--mono);font-size:12.5px;letter-spacing:-.01em}.sku-link{background:none;border:none;padding:0;min-height:0;cursor:pointer;color:var(--accent);text-decoration:none}.sku-link:hover{color:var(--accent-2);text-decoration:underline;text-underline-offset:3px;background:none}.sku-name{font-size:12px;color:var(--muted);max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress{height:5px;background:var(--panel-3);border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;width:35%;border-radius:999px;background:var(--accent);animation:progress-slide 1.1s ease-in-out infinite}@keyframes progress-slide{0%{transform:translateX(-120%)}to{transform:translateX(320%)}}.progress.determinate>span{width:0;animation:none;transition:width .3s ease}.steps{display:flex;flex-direction:column}.steps>.step>.card{margin:0;min-width:0}.step{display:grid;grid-template-columns:22px 1fr;grid-gap:12px;gap:12px;position:relative;padding-bottom:18px}.step:before{content:"";position:absolute;left:10.5px;top:26px;bottom:4px;width:1px;background:var(--border-2)}.step:last-child{padding-bottom:0}.step:last-child:before{display:none}.step.done:before{background:var(--green-line)}.step-dot{width:22px;height:22px;border-radius:50%;flex:none;margin-top:1px;display:grid;place-items:center;font-family:var(--mono);font-size:10.5px;font-weight:600;border:1px solid var(--border-2);color:var(--faint);background:var(--panel)}.step.done .step-dot{background:var(--green-soft);border-color:var(--green-line);color:var(--green)}.step.active .step-dot{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.step-title{font-size:13.5px;font-weight:600;line-height:1.5}.step-sub{font-size:12px;color:var(--muted);margin-top:1px}.step.pending .step-title{color:var(--muted);font-weight:500}.form-line{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:12px 0;border-bottom:1px solid var(--border)}.form-line:last-child{border-bottom:none}.form-line .fl-text{min-width:0}.form-line .fl-label{font-size:13.5px;font-weight:550;color:var(--text);display:flex;align-items:center;gap:6px}.form-line .fl-desc{font-size:12px;color:var(--muted);margin:2px 0 0}.unit-box{display:inline-flex;align-items:center;flex:none;background:var(--inset);border:1px solid var(--border-2);border-radius:var(--r);padding-right:10px;transition:border-color .12s ease,box-shadow .12s ease}.unit-box:focus-within{border-color:var(--accent-line);box-shadow:var(--ring)}.unit-box input{border:none;background:transparent;box-shadow:none!important;width:74px;text-align:right;padding:8px 8px 8px 11px;font-family:var(--mono);font-size:13px}.unit-box input:focus{border:none}.unit-box .unit{font-family:var(--mono);font-size:10.5px;color:var(--faint);letter-spacing:.02em}.opt-cards{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.opt-card{position:relative}.opt-card input{position:absolute;opacity:0;pointer-events:none;width:0;height:0;margin:0}.opt-card:has(input:checked){border-color:var(--accent-line);background:var(--accent-soft)}.opt-card:has(input:checked) .t{color:var(--accent)}.opt-card{text-align:left;padding:12px 14px;border-radius:var(--r);background:transparent;border:1px solid var(--border-2);cursor:pointer;min-height:0;font-weight:400;transition:border-color .12s ease,background .12s ease}.opt-card:hover{border-color:var(--faint);background:var(--panel-2)}.opt-card .t{font-weight:600;font-size:13px;display:block}.opt-card .d{font-size:11.5px;color:var(--muted);display:block;margin-top:2px;line-height:1.4}.opt-card.on{border-color:var(--accent-line);background:var(--accent-soft)}.opt-card.on .t{color:var(--accent)}.content>*{animation:rise .25s ease both}@keyframes rise{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}.scrim,.topbar{display:none}.hamburger{padding:8px;min-height:0}.hamburger svg{width:20px;height:20px;display:block}@media (max-width:1200px){:root{--sidebar-w:220px}.content{padding:var(--sp-5) var(--sp-5) 56px}}@media (max-width:900px){body{overflow-x:hidden}.layout{grid-template-columns:1fr}.topbar{display:flex;align-items:center;gap:var(--sp-3);position:-webkit-sticky;position:sticky;top:0;z-index:60;padding:10px 14px;background:var(--bg);border-bottom:1px solid var(--border)}.topbar .brand{padding:0;margin:0}.topbar .brand .mark{width:28px;height:28px;font-size:14px}.topbar .brand .name{font-size:14px}.sidebar{position:fixed;top:0;left:0;z-index:80;width:280px;max-width:84vw;height:100dvh;background:var(--bg);transform:translateX(-100%);transition:transform .22s ease;box-shadow:var(--sh-3)}.sidebar.open{transform:translateX(0)}.scrim{display:block;position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.55);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}.scrim.show{opacity:1;visibility:visible}.content{padding:var(--sp-4) var(--sp-4) 48px}.page-head h2{font-size:24px}.page-head .row{flex-direction:column;align-items:stretch;gap:var(--sp-3)}.card.flush{overflow-x:auto}.card table{min-width:560px}}@media (max-width:520px){.content{padding:var(--sp-3) var(--sp-3) 40px}.card{padding:var(--sp-4)}.kpi{font-size:22px}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--sp-2)}.subnav{overflow-x:auto;flex-wrap:nowrap}h1{font-size:20px}h2{font-size:18px}.page-head h2{font-size:22px}}.rp-bars{display:grid;grid-gap:5px;gap:5px;margin-top:var(--sp-3)}.rp-bar-row{display:grid;grid-template-columns:minmax(110px,220px) 1fr auto;grid-gap:10px;gap:10px;align-items:center;padding:3px 6px;border-radius:6px}.rp-bar-row:hover{background:var(--panel-2)}.rp-bar-label{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-bar-track{height:16px}.rp-bar-fill{height:100%;min-width:2px;background:var(--accent);border-radius:0 3px 3px 0;opacity:.8;transition:opacity .12s ease}.rp-bar-row:hover .rp-bar-fill{opacity:1}.rp-bar-fill.other{background:var(--panel-3)}.rp-bar-value{font-family:var(--mono);font-size:12px;color:var(--text);white-space:nowrap}.rp-bar-value .muted{margin-left:4px;font-size:11px}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-mono:"Geist Mono","Geist Mono Fallback"}