﻿:root{--ink:#182c3b;--muted:#738392;--green:#087f78;--line:#e3e9ed;--bg:#f4f7f9}*{box-sizing:border-box}body{margin:0;font:14px/1.6 'Microsoft YaHei',sans-serif;color:var(--ink);background:var(--bg)}aside{position:fixed;inset:0 auto 0 0;width:224px;background:#132b38;color:#d7e4ea;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:13px;padding:28px 22px;font-size:23px;font-weight:700}.mark{background:#138a81;color:white;border-radius:12px;padding:3px 12px;font-size:26px}.brand small{display:block;font-size:11px;color:#9eb7c2;letter-spacing:2px;font-weight:400}nav{padding:8px 12px}nav button{border:0;display:block;width:100%;text-align:left;background:transparent;color:#b5c9d3;padding:11px 17px;margin:3px 0;border-radius:7px;cursor:pointer;font:inherit}nav button:hover,nav button.active{background:#224754;color:#fff}nav .num{display:inline-block;width:28px;opacity:.5;font-size:11px}.aside-foot{margin-top:auto;padding:22px;font-size:11px;color:#8faab6;border-top:1px solid #2a4350}.shell{margin-left:224px}header{height:78px;padding:0 32px;background:white;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.header-sub{margin-left:18px;font-size:12px;color:var(--muted)}select,input{font:inherit;padding:9px 11px;border:1px solid #ccd6dd;border-radius:6px;background:white;color:var(--ink)}header label{font-size:12px;color:var(--muted)}header select{margin-left:9px}.prototype{padding:9px 32px;background:#eaf4f3;color:#38736e;font-size:12px}main{padding:28px 32px;max-width:1580px;margin:auto}h1{margin:0;font-size:27px;letter-spacing:-.5px}h2{font-size:18px;margin:0 0 15px}p{margin:8px 0;color:var(--muted)}.page-title{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;gap:20px}.actions{display:flex;gap:8px;flex-wrap:wrap}button{font:inherit;border:1px solid #ccd7de;background:white;border-radius:6px;padding:8px 13px;cursor:pointer;color:var(--ink)}button:hover{background:#edf5f4}button.primary{background:var(--green);color:white;border-color:var(--green)}button.primary:hover{background:#056d67}button.small{font-size:12px;padding:5px 9px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat,.panel{background:white;border:1px solid var(--line);border-radius:10px}.stat{padding:20px}.stat span{font-size:12px;color:var(--muted)}.stat strong{display:block;font-size:30px;margin:8px 0 3px;font-weight:650}.stat small{font-size:11px;color:var(--green)}.panel{padding:22px;margin-bottom:20px;overflow:auto}.grid{display:grid;grid-template-columns:1.2fr 1fr;gap:20px}.toolbar{display:flex;gap:10px;margin:0 0 16px;align-items:center;flex-wrap:wrap}.toolbar input{min-width:250px}.badge{padding:3px 9px;border-radius:4px;background:#e8f5ef;color:#238164;font-size:11px;white-space:nowrap}.badge.warn{background:#fff0da;color:#ad7425}.badge.grey{background:#edf1f5;color:#738392}table{width:100%;border-collapse:collapse;white-space:nowrap}th{background:#f6f8fa;color:#758594;font-size:12px;font-weight:500}th,td{padding:13px 12px;text-align:left;border-bottom:1px solid #edf1f3}td{font-size:13px}.money{font-variant-numeric:tabular-nums;font-weight:600}.link{color:var(--green);cursor:pointer}.flow{display:flex;gap:7px;flex-wrap:wrap;padding:12px 0}.step{background:#eef5f5;padding:9px 12px;border-radius:6px;color:#286c68;font-size:12px}.note{background:#f8fafb;border-left:3px solid #46a59b;padding:12px 15px;font-size:12px;color:#69808c;margin:15px 0}.timeline{border-left:2px solid #dce9e8;margin:18px 8px;padding-left:18px}.timeline div{margin-bottom:14px}.timeline small{color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:35px}footer{padding:12px 32px 24px;font-size:11px;color:#9aa8b1}dialog{border:0;border-radius:13px;width:520px;max-width:95vw;padding:0;box-shadow:0 25px 100px #132b3830}dialog::backdrop{background:#132b3860}form{padding:25px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.close{border:0;font-size:26px;padding:0 8px}.field{margin:15px 0}.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.field input,.field select{width:100%}.modal-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:17px;margin-top:20px}.error{color:#bc403f;font-size:13px}#toast{position:fixed;bottom:30px;left:55%;transform:translateX(-50%);background:#173d3a;color:white;padding:12px 20px;border-radius:8px;display:none;z-index:10}.rule{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.rule b{color:var(--green);font-weight:500}.permission{font-size:11px;margin-top:12px;color:#8b98a3}.progress{height:6px;background:#e8eeef;border-radius:9px;margin-top:7px;width:120px}.progress i{display:block;height:100%;background:#21978e;border-radius:9px}.details{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.details div{background:#f7f9fb;padding:13px;border-radius:6px}.details small{display:block;color:var(--muted)}pre{white-space:pre-wrap;font:12px/1.6 monospace;background:#f7f9fb;padding:15px;border-radius:7px}@media(max-width:1050px){aside{width:180px}.shell{margin-left:180px}.stats{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}main{padding:22px}.header-sub{display:none}}@media(max-width:700px){aside{position:static;width:100%}.brand{padding:15px}.aside-foot{display:none}nav{display:flex;overflow:auto;padding:5px}nav button{width:auto;white-space:nowrap}.shell{margin:0}header{padding:10px 16px;height:auto;gap:8px;flex-wrap:wrap}.prototype{padding:8px 16px}main{padding:18px 12px}.page-title{flex-direction:column}.panel{padding:14px}.details{grid-template-columns:1fr}.stat strong{font-size:24px}}
[hidden]{display:none!important}
#app aside{padding:0;overflow-y:auto}#app aside .brand{letter-spacing:0}#app nav{margin-top:0}#app nav button{font-size:14px;line-height:1.6}#app nav .num{width:28px;font-size:11px;opacity:.5}#app header{gap:16px;flex-wrap:wrap;height:auto;min-height:78px;padding-top:14px;padding-bottom:14px}#app header>div:last-child{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#app main{padding:28px 32px}#app .heading{margin-bottom:22px}#page-note{margin:8px 0 0}#actions{margin:0 0 20px}#app .panel{min-width:0}#app .toolbar{margin:0 0 16px}#app .toolbar input{min-width:min(280px,100%);flex:1;max-width:480px}#app .view-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--line)}#app .view-buttons button{font-size:13px;background:#f6f9fa;border-color:#dfe7eb}#app .view-buttons button.active{color:#087f78;background:#e7f4f1;border-color:#91c9bf;font-weight:600}#app .list-heading h2{font-size:18px;margin:0 0 18px}#app #pager{margin:18px 0 0;justify-content:flex-end}#app .deployment-note{font-size:11px;color:#8899a4}#app .warehouse-toolbar{margin-bottom:20px}#app .warehouse-action-group{margin:0}#app .warehouse-action-group h2{font-size:12px}#app .panel table th{white-space:nowrap}#app .panel table td{vertical-align:middle}#app .panel table tbody tr:hover{background:#f9fbfc}#app table .empty{padding:42px 20px}#app .activity-heading{margin-top:26px}#app .activity-timeline p{font-size:12px}#app .note{line-height:1.8}#app .product-thumb{border-radius:10px}#app .locked{display:inline-block;font-size:28px;line-height:1.25;font-weight:750;border-radius:9px}#toast:not([hidden]){display:block;z-index:1000}
dialog{width:min(1100px,96vw);max-width:96vw;max-height:92vh;padding:24px;overflow:auto}dialog form{padding:0}dialog .dialog-head{margin-bottom:20px;padding-bottom:12px}dialog .dialog-head h2{margin:0}dialog .field{margin:0;display:block;font-size:12px;color:var(--muted)}dialog .field input,dialog .field select{margin-top:7px;width:100%;font-size:14px}dialog .dialog-foot{padding-top:18px;margin-top:22px}dialog .dialog-foot button{min-height:38px}dialog .form-grid{gap:18px}dialog .note{line-height:1.8}dialog table{font-size:13px}dialog .json-detail{white-space:pre-wrap}.header-sub{white-space:nowrap}.home-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.home-shortcut{padding:22px;text-align:left;background:white;border:1px solid var(--line);border-radius:10px}.home-shortcut strong{display:block;font-size:18px;color:var(--ink)}.home-shortcut small{display:block;margin-top:9px;font-size:12px;color:var(--muted)}.home-shortcut:hover{border-color:#91c9bf;background:#f8fcfb}
#app #actions.warehouse-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;width:100%;gap:12px}#app #actions.warehouse-toolbar .warehouse-action-group{margin:0;min-width:0}#app #actions.warehouse-toolbar .warehouse-action-buttons{align-content:start}#app #actions.warehouse-toolbar button{white-space:normal;overflow-wrap:anywhere}#app #actions.warehouse-toolbar .warehouse-action-group h2{margin-bottom:12px}
.purchase-products{margin:20px 0;padding:18px;border:1px solid #e0e8ed;border-radius:10px;background:#f8fbfc}.purchase-products>input{width:100%;margin-bottom:12px}.purchase-sku-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:10px;max-height:300px;overflow:auto;margin-bottom:14px}.purchase-sku-option{display:flex;gap:10px;align-items:center;padding:10px;background:white;border:1px solid #dfe8ec;border-radius:8px}.purchase-sku-option:has(input:checked){border-color:#087f78;background:#edf8f4}.purchase-sku-option input[type=checkbox]{width:18px;flex:none}.purchase-sku-option img{width:48px;height:48px}.purchase-sku-option span{flex:1;min-width:0}.purchase-sku-option small{display:block;color:#81929b;font-size:11px}.purchase-sku-option input[type=number]{width:76px;flex:none}.sku-bom-group{margin:16px 0;border-left:4px solid #087f78;padding:14px;background:#edf8f4;border-radius:6px}.sku-bom-group h3{margin:0 0 10px}.sku-color-1{border-color:#3884c5;background:#eef6fc}.sku-color-2{border-color:#9265bd;background:#f6f1fb}.sku-color-3{border-color:#ca933a;background:#fff8e9}.sku-color-4{border-color:#bd637c;background:#fff1f5}.purchase-unit{display:block;margin-top:4px;color:#087f78}#app [data-module=home] .stats{margin-bottom:24px}.home-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}.home-stats .stat{min-width:0}.home-stats strong{overflow-wrap:anywhere}@media(max-width:850px){.home-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:480px){.purchase-sku-options{grid-template-columns:1fr}.home-stats .stat{padding:14px}.home-stats .stat strong{font-size:22px}}
.related-balance-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.related-balance-cards .stat{background:#f6fafb;min-width:0}.related-balance-cards strong{font-size:27px;overflow-wrap:anywhere}#related-ledger-search{width:min(500px,100%)}#related-panels .panel{margin-top:20px}#related-panels .toolbar input{width:min(420px,100%)}@media(max-width:650px){.related-balance-cards{grid-template-columns:1fr;gap:8px}.related-balance-cards .stat{padding:12px}.related-balance-cards strong{font-size:24px}}
@media(max-width:1200px){#app #actions.warehouse-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){#app main{padding:22px}.home-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){#app main{padding:18px 12px}#app aside{overflow:visible}#app header{padding:12px 16px}.home-shortcuts{gap:10px}.home-shortcut{padding:16px}#app .view-buttons{gap:7px}.view-buttons button{padding:8px 10px}dialog{padding:18px}#app #actions.warehouse-toolbar{grid-template-columns:1fr}}
