:root{--ink:#18201d;--muted:#68726d;--canvas:#f3f5f1;--panel:#fff;--line:#dfe5de;--green:#1f6b4f;--green-2:#2f8a68;--green-soft:#e3f1ea;--orange:#d56d30;--orange-soft:#fff0e6;--red:#b54137;--red-soft:#fbe8e6;--nav:#17211d;--shadow:0 18px 50px #173b2b12}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;background:var(--canvas);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-screen{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(400px,.92fr);background:#f7f8f5}.login-visual{position:relative;overflow:hidden;padding:48px 60px;color:#fff;background:radial-gradient(circle at 80% 18%,#66a27b55,transparent 32%),linear-gradient(145deg,#12231c,#1d5b43 58%,#2a7456);display:flex;flex-direction:column;justify-content:space-between}.login-visual:before,.login-visual:after{content:"";position:absolute;border:1px solid #ffffff22;border-radius:50%}.login-visual:before{width:420px;height:420px;right:-155px;bottom:-80px}.login-visual:after{width:270px;height:270px;right:-75px;bottom:-5px}.visual-brand{display:flex;align-items:center;gap:13px;font-weight:750;letter-spacing:.5px;position:relative;z-index:1}.visual-brand img{width:46px;height:46px;border-radius:13px}.visual-copy{max-width:610px;position:relative;z-index:1}.visual-copy small,.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:800;color:#b9e2ce}.visual-copy h1{font-size:clamp(40px,5vw,68px);line-height:1.12;margin:18px 0 24px;letter-spacing:-2px}.visual-copy p{font-size:16px;line-height:1.8;color:#d5e5dc;max-width:530px}.visual-flow{display:flex;align-items:center;gap:12px;font-size:12px;color:#e5f3eb;position:relative;z-index:1}.visual-flow span{padding:9px 12px;border:1px solid #ffffff2d;background:#ffffff10;border-radius:999px}.visual-flow i{height:1px;width:34px;background:#ffffff48}.login-card{width:min(440px,calc(100% - 48px));margin:auto;background:#fff;border:1px solid var(--line);border-radius:24px;padding:42px;box-shadow:var(--shadow)}.mobile-brand{display:none}.login-card h2{font-size:30px;margin:10px 0 8px}.login-card>p{color:var(--muted);margin:0 0 30px}.login-card label,.form-grid label,.stack-form label{display:block;font-size:13px;font-weight:700;color:#38423d}.login-card input,.form-grid input,.form-grid select,.stack-form input,.stack-form select,.stack-form textarea,.line-row input,.line-row select{display:block;width:100%;margin-top:7px;border:1px solid #d9dfd9;border-radius:11px;background:#fff;padding:11px 12px;outline:none}.login-card input:focus,.form-grid input:focus,.form-grid select:focus,.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus,.line-row input:focus,.line-row select:focus{border-color:var(--green-2);box-shadow:0 0 0 3px #2f8a6818}.login-card label{margin-bottom:17px}.primary{border:0;background:var(--green);color:#fff;border-radius:10px;padding:11px 17px;font-weight:750;box-shadow:0 8px 20px #1f6b4f24}.primary:hover{background:#185c43}.wide{width:100%;padding:13px}.login-note{display:block;text-align:center;color:#8a938f;line-height:1.6;margin-top:16px}.form-error{min-height:24px;color:var(--red);font-size:12px}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:var(--nav);color:#fff;padding:23px 16px;display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;gap:12px;padding:4px 8px 20px;text-decoration:none;color:#fff;border-bottom:1px solid #ffffff13}.brand img{width:42px;height:42px;border-radius:12px}.brand div{display:flex;flex-direction:column;gap:3px}.brand strong{font-size:15px}.brand small{font-size:11px;color:#91a59b}.sidebar nav{margin-top:14px;overflow:auto;display:flex;flex-direction:column;gap:3px}.sidebar nav p{margin:17px 12px 6px;font-size:10px;letter-spacing:1.5px;color:#70827a}.sidebar nav a{display:flex;align-items:center;gap:11px;color:#aab9b2;text-decoration:none;padding:11px 12px;border-radius:9px;font-size:13px}.sidebar nav a span{width:18px;text-align:center}.sidebar nav a b{margin-left:auto;background:#d96632;color:#fff;border-radius:999px;padding:2px 7px;font-size:10px}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:#ffffff12}.sidebar-foot{margin-top:auto;border-top:1px solid #ffffff13;padding:15px 7px 0;display:grid;gap:8px}.sidebar-foot a,.sidebar-foot button{color:#9fb0a8;background:none;border:0;text-decoration:none;font-size:12px;text-align:left;padding:7px}.sidebar-foot a:hover,.sidebar-foot button:hover{color:#fff}main{margin-left:248px;min-height:100vh}.topbar{height:90px;background:#ffffffdb;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;position:sticky;top:0;z-index:20}.breadcrumb{color:#8b9690;font-size:11px}.topbar h1{margin:3px 0 0;font-size:23px}.top-actions{display:flex;align-items:center;gap:12px}.soft-button,.secondary,.ghost{border:1px solid var(--line);background:#fff;color:#3c4742;border-radius:10px;padding:9px 13px}.soft-button:hover,.secondary:hover,.ghost:hover{background:#f5f7f4}.user-chip{display:flex;align-items:center;gap:10px;border-left:1px solid var(--line);padding-left:16px}.user-chip>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--green);font-weight:800}.user-chip div{display:flex;flex-direction:column;gap:2px}.user-chip strong{font-size:12px}.user-chip small{font-size:10px;color:var(--muted)}.mobile-menu{display:none}.content{padding:28px 34px 60px;max-width:1500px;margin:auto}.loading-card,.empty{padding:50px;background:#fff;border:1px solid var(--line);border-radius:16px;text-align:center;color:var(--muted)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:22px}.page-head h2{font-size:25px;margin:0 0 6px}.page-head p{color:var(--muted);margin:0;font-size:13px}.page-actions{display:flex;gap:9px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric{background:#fff;border:1px solid var(--line);border-radius:16px;padding:19px;display:flex;justify-content:space-between;align-items:flex-start}.metric small{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;font-size:29px;margin-top:8px}.metric i{width:42px;height:42px;border-radius:12px;background:var(--green-soft);color:var(--green);display:grid;place-items:center;font-style:normal;font-weight:800}.metric.warning i{background:var(--orange-soft);color:var(--orange)}.metric.danger i{background:var(--red-soft);color:var(--red)}.grid-2{display:grid;grid-template-columns:1.35fr .9fr;gap:17px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 4px 18px #173b2b08}.panel-title{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px}.panel-title h3{font-size:16px;margin:0 0 5px}.panel-title p{font-size:12px;color:var(--muted);margin:0}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px;background:#fff}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table th,.data-table td{text-align:left;padding:13px 14px;border-bottom:1px solid #e8ece7;white-space:nowrap}.data-table th{font-size:11px;color:#7d8983;background:#fafbf9;font-weight:700}.data-table tbody tr:hover{background:#fbfdfb}.data-table tbody tr:last-child td{border-bottom:0}.data-table strong{font-size:13px}.subtle{color:var(--muted);font-size:11px}.tag{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:750;background:#edf1ee;color:#5f6a64}.tag.pending,.tag.partial_outbound,.tag.partial_received{background:var(--orange-soft);color:#a75523}.tag.shipped{background:#e6eef9;color:#426d9b}.tag.completed,.tag.received,.tag.enabled,.tag.matched{background:var(--green-soft);color:var(--green)}.tag.disabled,.tag.adjusted{background:#eceeed;color:#69716d}.tag.danger{background:var(--red-soft);color:var(--red)}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:15px}.filters input,.filters select{border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 11px;min-width:150px}.row-actions{display:flex;gap:6px}.row-actions button{border:0;background:transparent;color:var(--green);font-size:11px;font-weight:700}.warehouse-progress{display:grid;gap:9px}.progress-row{padding:13px;border:1px solid var(--line);border-radius:12px}.progress-row header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-row header strong{font-size:12px}.progress-row p{display:flex;justify-content:space-between;margin:5px 0;font-size:11px;color:var(--muted)}.progress-row p b{color:var(--ink)}.stock-list{display:grid;gap:10px}.stock-card{border:1px solid var(--line);border-radius:12px;padding:13px;display:flex;align-items:center;justify-content:space-between}.stock-card div{display:flex;flex-direction:column;gap:4px}.stock-card small{color:var(--muted)}.stock-card strong{font-size:22px}.fulfillment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.fulfillment-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:19px;box-shadow:0 5px 20px #173b2b08}.fulfillment-card>header{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:13px}.fulfillment-card h3{font-size:15px;margin:0 0 5px}.fulfillment-card header p{font-size:11px;color:var(--muted);margin:0}.fulfillment-lines{display:grid;gap:8px}.fulfillment-line{display:grid;grid-template-columns:1fr auto;gap:10px;padding:9px 0}.fulfillment-line strong{font-size:12px}.fulfillment-line small{display:block;color:var(--muted);margin-top:3px}.fulfillment-card footer{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:14px;margin-top:12px}.master-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.master-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}.master-card .code{color:var(--muted);font-size:10px;letter-spacing:.5px}.master-card h3{font-size:15px;margin:8px 0 5px}.master-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.master-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding-top:12px;border-top:1px solid var(--line)}.modal-backdrop{position:fixed;inset:0;background:#0c1812aa;z-index:100;display:grid;place-items:center;padding:22px}.modal{width:min(720px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;padding:27px;box-shadow:0 30px 90px #0004;position:relative}.modal.wide{width:min(980px,100%)}.modal-close{position:absolute;right:18px;top:17px;border:0;background:#f1f4f1;width:34px;height:34px;border-radius:9px;font-size:22px;color:#68726d}.modal h2{font-size:21px;margin:0 45px 6px 0}.modal>.modal-copy,.modal-copy{color:var(--muted);font-size:12px;margin:0 0 21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid .span-2{grid-column:1/-1}.stack-form{display:grid;gap:15px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.order-lines{display:grid;gap:10px;margin-top:10px}.line-row{display:grid;grid-template-columns:1.4fr .6fr 1fr 38px;gap:9px;align-items:end;border:1px solid var(--line);border-radius:12px;padding:11px;background:#fafbf9}.line-row label{font-size:10px;color:var(--muted);font-weight:700}.line-row button{height:38px;border:0;border-radius:9px;background:var(--red-soft);color:var(--red)}.event-lines{display:grid;gap:9px}.event-line{display:grid;grid-template-columns:1fr 120px;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px}.event-line strong{font-size:12px}.event-line small{display:block;color:var(--muted);margin-top:3px}.event-line input{width:100%;padding:9px;border:1px solid var(--line);border-radius:9px}.toast{position:fixed;z-index:200;right:24px;bottom:24px;background:#17211d;color:#fff;padding:13px 17px;border-radius:11px;box-shadow:0 14px 45px #0004;font-size:12px}.toast.error{background:#8f312a}.section-note{background:#f8faf7;border:1px dashed #cfd8d0;border-radius:12px;padding:12px 14px;color:var(--muted);font-size:12px;margin-bottom:14px}.empty-inline{padding:26px;text-align:center;color:var(--muted);font-size:12px}.number-positive{color:var(--green);font-weight:800}.number-negative{color:var(--red);font-weight:800}@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.master-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){.login-screen{grid-template-columns:1fr}.login-visual{display:none}.mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:28px}.mobile-brand img{width:40px;height:40px;border-radius:11px}.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.mobile-menu{display:block;border:0;background:transparent;font-size:22px}.topbar{padding:0 18px;height:78px}.top-actions .soft-button,.user-chip div{display:none}main{margin-left:0}.content{padding:21px 16px 45px}.fulfillment-grid,.master-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;gap:15px}.page-actions{flex-wrap:wrap;justify-content:flex-end}.line-row{grid-template-columns:1fr 1fr}.line-row label:first-child{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}}@media(max-width:520px){.login-card{padding:28px;width:calc(100% - 28px)}.metrics{grid-template-columns:1fr}.page-head{flex-direction:column}.page-actions{justify-content:flex-start}.line-row{grid-template-columns:1fr}.line-row label:first-child{grid-column:auto}.modal{padding:23px 18px}.event-line{grid-template-columns:1fr}}
[hidden]{display:none!important}
.master-actions{display:flex;align-items:center;gap:10px}.danger-link{border:0;background:transparent;color:var(--red);font-size:11px;font-weight:750;padding:4px}.danger-link:hover{text-decoration:underline}.danger-button{border:0;background:var(--red);color:#fff;border-radius:10px;padding:11px 17px;font-weight:750}.danger-button:hover{background:#96372f}
.edit-link{border:0;background:transparent;color:var(--green);font-size:11px;font-weight:750;padding:4px}.edit-link:hover{text-decoration:underline}
.readonly-input{background:#f3f5f3!important;color:#6f7a74!important;cursor:not-allowed}
.import-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:20px}.import-summary>div{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fafbf9}.import-summary small{display:block;color:var(--muted);font-size:10px}.import-summary strong{display:block;font-size:22px;margin-top:5px}.import-summary .ok{background:var(--green-soft);border-color:#cce3d7}.import-summary .warn{background:var(--orange-soft);border-color:#f1d4c2}.import-section{margin-top:20px}.import-section>h3{font-size:14px;margin:0 0 10px}.import-order{border:1px solid var(--line);border-radius:13px;padding:14px;margin-bottom:10px}.import-order.exception{border-color:#efd0bd;background:#fffaf7}.import-order>header{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.import-order header small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.import-lines{display:grid;gap:8px}.import-line{display:grid;grid-template-columns:minmax(240px,1fr) minmax(280px,1fr);gap:12px;align-items:center;border-top:1px solid #eee7e2;padding-top:9px}.import-line small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.import-line label{font-size:10px}.import-line select{display:block;width:100%;margin-top:5px;border:1px solid #dfd7d2;border-radius:9px;padding:8px;background:#fff}.import-error{color:var(--red);font-size:11px;margin:0 0 5px}.import-duplicates{display:flex;flex-wrap:wrap;gap:7px}.import-duplicates span{font-size:10px;color:var(--muted);background:#f0f2f0;border-radius:8px;padding:7px 9px}.sticky-actions{position:sticky;bottom:-27px;background:#fff;border-top:1px solid var(--line);padding:14px 0 3px;z-index:2}.primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}@media(max-width:820px){.import-summary{grid-template-columns:repeat(2,1fr)}.import-line{grid-template-columns:1fr}}
.inbound-summary{grid-template-columns:repeat(6,1fr)}.import-warning{color:var(--red);border-color:#edc8c4;background:var(--red-soft);margin-top:14px}@media(max-width:1100px){.inbound-summary{grid-template-columns:repeat(3,1fr)}}@media(max-width:520px){.inbound-summary{grid-template-columns:repeat(2,1fr)}}
.warehouse-match-hint{display:block;margin-top:6px;color:var(--green);font-size:10px;line-height:1.35}.warehouse-match-hint.error{color:var(--red)}.line-row.line-error{border-color:#edc8c4;background:#fff8f7}.line-row select:disabled{background:#f1f4f1;color:#59635e;cursor:not-allowed}
.movement-voided{opacity:.55}.movement-voided td{text-decoration:line-through}.movement-voided .row-actions{text-decoration:none}
.outbound-create-actions{display:flex;align-items:center;gap:9px}.outbound-create-actions input{border:1px solid var(--line);border-radius:10px;padding:9px 11px}.selection-summary{display:inline-flex;align-items:center;padding:0 10px;color:var(--green);font-size:11px;font-weight:750}.pending-table input[type=checkbox]{width:16px;height:16px;accent-color:var(--green)}.outbound-document-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.outbound-document{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff}.outbound-document>header{display:flex;justify-content:space-between;gap:12px;padding:15px 16px;background:#f8faf7;border-bottom:1px solid var(--line)}.outbound-document>header strong{font-size:14px}.outbound-document>header small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.outbound-store-groups{display:grid;gap:0}.outbound-store-groups section{padding:13px 16px;border-bottom:1px solid #edf0ec}.outbound-store-groups h4{margin:0 0 8px;font-size:12px;color:var(--green)}.outbound-store-groups section>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;font-size:11px}.outbound-store-groups section>div strong{white-space:nowrap}.outbound-document>footer{padding:11px 16px;color:var(--muted);font-size:10px;background:#fafbf9}@media(max-width:900px){.outbound-document-list{grid-template-columns:1fr}.outbound-create-actions{flex-wrap:wrap}}
.product-hierarchy{display:grid;gap:14px}.product-category{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 4px 18px #173b2b08}.product-category>header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;background:linear-gradient(90deg,#edf6f0,#fafcf9);border-bottom:1px solid var(--line)}.category-title{display:flex;align-items:center;gap:12px}.category-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--green);color:#fff;font-size:11px;font-weight:800}.category-title h3{margin:0 0 4px;font-size:15px}.category-title p{margin:0;color:var(--muted);font-size:10px}.category-meta{display:flex;align-items:center;gap:14px}.sku-list-head,.sku-list-row{display:grid;grid-template-columns:minmax(280px,1.5fr) minmax(170px,.8fr) 100px 90px 110px;gap:12px;align-items:center}.sku-list-head{padding:9px 18px 9px 62px;background:#fafbf9;color:var(--muted);font-size:10px;border-bottom:1px solid #e9ede8}.sku-list-row{padding:12px 18px;border-bottom:1px solid #edf0ec;font-size:11px}.sku-list-row:last-child{border-bottom:0}.sku-list-row:hover{background:#fbfdfb}.sku-tree-name{display:flex;align-items:center;gap:10px}.sku-tree-name i,.spu-child-row i{width:16px;height:12px;border-left:1px solid #b8c5bc;border-bottom:1px solid #b8c5bc;border-radius:0 0 0 5px;flex:none}.sku-tree-name strong{font-size:12px}.sku-tree-name small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.spu-child-row{display:flex;align-items:center;gap:10px;padding:11px 20px 11px 34px;border-bottom:1px solid #edf0ec;font-size:12px}.spu-child-row:last-child{border-bottom:0}.spu-child-row span{font-weight:700}.spu-child-row small{margin-left:auto;color:var(--muted);font-size:10px}.category-empty{padding:18px 62px;color:var(--muted);font-size:11px}@media(max-width:850px){.sku-list-head{display:none}.sku-list-row{grid-template-columns:1fr auto;gap:7px}.sku-list-row>div:nth-child(2),.sku-list-row>div:nth-child(3){grid-column:1}.sku-list-row>div:nth-child(4),.sku-list-row>div:nth-child(5){grid-column:2}.category-meta{align-items:flex-end;flex-direction:column;gap:7px}.spu-child-row{flex-wrap:wrap}.spu-child-row small{width:100%;margin-left:26px}}
.product-category>summary,.spu-tree-node>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px}.product-category>summary::-webkit-details-marker,.spu-tree-node>summary::-webkit-details-marker{display:none}.product-category>summary{padding:16px 18px;background:linear-gradient(90deg,#edf6f0,#fafcf9);border-bottom:1px solid var(--line)}.product-category:not([open])>summary{border-bottom:0}.tree-chevron{display:inline-grid;place-items:center;width:20px;height:20px;color:var(--green);font-size:21px;font-weight:700;transform:rotate(90deg);transition:transform .16s}.product-category:not([open])>summary .category-title>.tree-chevron,.spu-tree-node:not([open])>summary>.tree-chevron{transform:none}.spu-tree-list{display:grid;padding:12px;background:#f8faf8;gap:10px}.spu-tree-node{background:#fff;border:1px solid #e4eae4;border-radius:12px;overflow:hidden}.spu-tree-node>summary{padding:12px 16px}.spu-tree-node[open]>summary{border-bottom:1px solid #e9ede8}.spu-summary-name{margin-right:auto;display:flex;flex-direction:column;gap:3px}.spu-summary-name strong{font-size:13px}.spu-summary-name small{font-size:9px;color:var(--muted)}.spu-summary-meta{display:flex;align-items:center;gap:12px}.spu-tree-node .sku-list-head{padding-left:48px}.spu-tree-node .sku-list-row{padding-left:16px}@media(max-width:850px){.product-category>summary,.spu-tree-node>summary{align-items:flex-start}.category-title{min-width:0}.category-meta,.spu-summary-meta{flex-direction:column;align-items:flex-end;gap:6px}.spu-tree-list{padding:8px}.tree-chevron{flex:none}.spu-tree-node .sku-list-row{padding-left:12px}}

.tag.processing,.tag.unpaid,.tag.partial_paid,.tag.unshipped,.tag.partial_shipped,.tag.unarrived,.tag.partial_arrived{background:var(--orange-soft);color:#a75523}.tag.paid,.tag.fully_shipped,.tag.fully_arrived,.tag.arrived{background:var(--green-soft);color:var(--green)}
.purchase-todo{color:var(--orange);font-size:11px!important}.purchase-lines{display:grid;gap:9px}.purchase-line{display:grid;grid-template-columns:minmax(230px,1.5fr) minmax(110px,.55fr) minmax(110px,.55fr) minmax(115px,.5fr) 38px;gap:9px;align-items:end;border:1px solid var(--line);border-radius:12px;padding:11px;background:#fafbf9}.purchase-line label{font-size:10px;color:var(--muted);font-weight:700}.purchase-line input,.purchase-line select{display:block;width:100%;margin-top:7px;border:1px solid #d9dfd9;border-radius:10px;background:#fff;padding:10px 11px;outline:none}.purchase-line button{height:38px;border:0;border-radius:9px;background:var(--red-soft);color:var(--red)}.purchase-subtotal{height:59px;display:flex;flex-direction:column;justify-content:center}.purchase-subtotal small{color:var(--muted);font-size:10px}.purchase-subtotal strong{margin-top:5px;font-size:14px}.purchase-line-total{text-align:right;padding:11px 4px 0;color:var(--muted);font-size:12px}.purchase-line-total strong{color:var(--ink);font-size:17px;margin-left:8px}.purchase-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:22px}.purchase-summary>div{border:1px solid var(--line);border-radius:12px;padding:13px;background:#fafbf9}.purchase-summary small,.purchase-summary span{display:block;color:var(--muted);font-size:10px}.purchase-summary strong{display:block;font-size:20px;margin:6px 0}.purchase-detail-section{margin-top:22px}.arrival-button{display:block;margin-top:6px;border:0;background:var(--green-soft);color:var(--green);border-radius:7px;padding:5px 8px;font-size:10px;font-weight:750}
@media(max-width:850px){.purchase-line{grid-template-columns:1fr 1fr}.purchase-line label:first-child{grid-column:1/-1}.purchase-summary{grid-template-columns:1fr 1fr}}@media(max-width:520px){.purchase-line{grid-template-columns:1fr}.purchase-line label:first-child{grid-column:auto}.purchase-summary{grid-template-columns:1fr}}
.purchase-main-row.expanded{background:#f8fcf9}.purchase-toggle{display:inline-flex!important;align-items:center;gap:4px}.purchase-toggle span{font-size:17px;line-height:10px}.purchase-sku-detail>td{padding:0!important;background:#f4f7f3}.purchase-sku-detail:hover{background:transparent!important}.purchase-sku-panel{padding:14px 18px 18px;border-left:3px solid var(--green)}.purchase-sku-title{display:flex;align-items:center;gap:10px;margin-bottom:10px}.purchase-sku-title strong{font-size:12px}.purchase-sku-title span{color:var(--muted);font-size:10px}.purchase-sku-panel .table-wrap{box-shadow:0 4px 14px #173b2b08}.purchase-pending-amount{margin-top:5px;color:var(--orange)}.purchase-completed{display:inline-flex;align-items:center;color:var(--green);background:var(--green-soft);padding:6px 10px;border-radius:999px;font-size:11px}.purchase-completed:before{content:"✓";margin-right:5px;font-weight:900}@media(max-width:820px){.purchase-sku-panel{padding:11px}.purchase-sku-title{align-items:flex-start;flex-direction:column;gap:3px}}
.row-actions .danger-link{color:var(--red)}
.tag.shortage_resolved{color:#955021;background:#fff2dd}
.tag.overdue{background:var(--red-soft);color:var(--red)}
.purchase-discount-note{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-10px 0 4px;padding:13px 15px;border:1px dashed #dfc8a8;background:#fffaf2;border-radius:12px}.purchase-discount-note>div{display:flex;align-items:baseline;gap:10px;min-width:0}.purchase-discount-note small{color:var(--muted);font-size:10px}.purchase-discount-note strong{color:var(--orange);font-size:16px}.purchase-discount-note span{color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:520px){.purchase-discount-note{align-items:flex-start}.purchase-discount-note>div{align-items:flex-start;flex-direction:column;gap:4px}.purchase-discount-note span{white-space:normal}}

/* 采购驱动的新版库存管理 */
.inventory-metrics{margin-top:18px}
.inventory-initialization-table{max-height:52vh;overflow:auto}.inventory-initialization-table thead{position:sticky;top:0;z-index:2}.inventory-initial-quantity{width:140px;border:1px solid #d9dfd9;border-radius:9px;padding:9px 10px;outline:none}.inventory-initial-quantity:focus{border-color:var(--green-2);box-shadow:0 0 0 3px #2f8a6818}.inventory-initial-quantity:disabled{background:#f1f4f1;color:var(--muted)}
.settlement-event-line{grid-template-columns:minmax(220px,1fr) 130px 130px}.settlement-event-line label{font-size:10px;color:var(--muted)}@media(max-width:650px){.settlement-event-line{grid-template-columns:1fr 1fr}.settlement-event-line>div{grid-column:1/-1}}
.ordering-detail{padding:15px 18px 20px;border-left:3px solid var(--green);display:grid;gap:20px}.ordering-report-section{display:grid;gap:9px}.ordering-report-title{display:flex;align-items:center;justify-content:space-between}.ordering-report-title strong{display:block;font-size:13px}.ordering-report-title small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.ordering-warehouse{border:1px solid var(--line);border-radius:11px;background:#fff;overflow:hidden}.ordering-warehouse>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:22px minmax(180px,1fr) minmax(220px,1fr) auto;align-items:center;gap:10px;padding:10px 12px;background:#f8faf7}.ordering-warehouse>summary::-webkit-details-marker{display:none}.ordering-warehouse:not([open])>summary>.tree-chevron{transform:none}.ordering-warehouse>summary strong{font-size:12px}.ordering-warehouse>summary>span:not(.tree-chevron){font-size:10px;color:var(--muted)}.ordering-warehouse>.table-wrap{border-width:1px 0 0;border-radius:0}.ordering-preview-table{max-height:38vh}.ordering-preview-table thead{position:sticky;top:0;z-index:1}.import-section select[data-ordering-warehouse]{min-width:240px;border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff;font-size:11px}@media(max-width:820px){.ordering-detail{padding:12px}.ordering-warehouse>summary{grid-template-columns:22px 1fr auto}.ordering-warehouse>summary>span:not(.tree-chevron){grid-column:2}.ordering-warehouse>summary button{grid-column:3;grid-row:1/3}}
.sku-list-head,.sku-list-row{grid-template-columns:minmax(250px,1.45fr) minmax(150px,.75fr) 90px 105px 80px 110px}.inventory-warning-panel{margin-top:18px}.inventory-warehouses{display:grid;gap:12px}.inventory-warehouses>.panel-title{margin:4px 0 0}.inventory-warehouse{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 4px 18px #173b2b08}.inventory-warehouse>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:15px 18px;background:linear-gradient(90deg,#edf6f0,#fafcf9)}.inventory-warehouse>summary::-webkit-details-marker{display:none}.inventory-warehouse>summary>.tree-chevron{flex:none}.inventory-warehouse:not([open])>summary>.tree-chevron{transform:none}.warehouse-summary-grid{width:100%;display:grid!important;grid-template-columns:minmax(180px,1.5fr) repeat(4,minmax(100px,.7fr));align-items:center!important;gap:18px!important}.warehouse-summary-grid>div{display:block!important}.warehouse-summary-grid small{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.warehouse-summary-grid strong{font-size:15px}.warehouse-summary-grid b{font-size:16px;color:var(--green)}.inventory-warehouse>.table-wrap{border-width:1px 0 0;border-radius:0}.stock-warning-row{background:#fff8f7}.stock-warning-row:hover{background:#fff3f1!important}.pending-purchase-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pending-purchase-links button{border:1px solid #e3cda9;background:#fffaf2;color:#955021;border-radius:7px;padding:5px 8px;font-size:10px;font-weight:750}.pending-purchase-links button:hover{background:#fff2dd}@media(max-width:850px){.sku-list-row{grid-template-columns:1fr auto}.sku-list-row>div:nth-child(2),.sku-list-row>div:nth-child(3),.sku-list-row>div:nth-child(4){grid-column:1}.sku-list-row>div:nth-child(5),.sku-list-row>div:nth-child(6){grid-column:2}.inventory-warehouse>summary{align-items:flex-start}.warehouse-summary-grid{grid-template-columns:1fr 1fr;gap:10px!important}.warehouse-summary-grid>div:first-child{grid-column:1/-1}}
.issue-detail{padding:16px 18px;background:#fbfcfb;border:1px solid #e5ebe7;border-radius:12px}.issue-description{margin-bottom:18px}.issue-description p{margin:8px 0 12px;white-space:pre-wrap;line-height:1.65}.issue-description small{display:block;margin-top:8px;color:#78817c}.issue-images{display:flex;flex-wrap:wrap;gap:10px}.issue-images a{display:block;width:92px;height:92px;border-radius:10px;overflow:hidden;border:1px solid #dce4df;background:#fff}.issue-images img{width:100%;height:100%;object-fit:cover;display:block}
/* Temporary SKU migration page */
.compact-field{display:flex!important;align-items:center;gap:6px;white-space:nowrap;font-size:12px}.compact-field input{width:82px!important;min-width:82px;padding:7px 8px!important;margin:0!important}[data-migration-row] select{min-width:260px;max-width:360px}
