:root{color:#20242a;font-synthesis:none;text-rendering:optimizelegibility;letter-spacing:0;background:#f3f5f7;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{max-width:100%;min-height:100%;overflow-x:hidden}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit;letter-spacing:0}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}:root{--sidebar:#182529;--sidebar-muted:#91a2a5;--teal:#087f78;--teal-dark:#066761;--border:#dfe4e7;--muted:#687278;--surface:#fff}.app-shell{min-height:100vh}.sidebar{z-index:30;color:#fff;background:var(--sidebar);flex-direction:column;width:232px;transition:width .2s,transform .2s;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;height:72px;padding:0 18px;display:flex}.brand-mark{background:#18a79d;border-radius:6px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.brand-copy,.account>div,.product-cell>div{flex-direction:column;min-width:0;display:flex}.brand-copy strong{font-size:15px}.brand-copy span,.account span{color:var(--sidebar-muted);margin-top:2px;font-size:11px}.nav-list{flex:1;padding:14px 10px}.nav-item{color:#b8c5c7;white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;width:100%;min-height:42px;margin-bottom:4px;padding:0 12px;font-size:14px;display:flex}.nav-item:hover{color:#fff;background:#ffffff0f}.nav-item.active{color:#fff;background:var(--teal);font-weight:600}.sidebar-footer{border-top:1px solid #ffffff14;padding:10px}.collapse-button{text-align:left}.account{align-items:center;gap:10px;padding:12px;display:flex}.account strong{font-size:13px}.avatar{background:#385256;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid;color:#fff!important;margin:0!important;font-size:12px!important}.main-area{min-height:100vh;margin-left:232px;transition:margin-left .2s}.offline-banner{color:#76510c;background:#fff5d9;border-bottom:1px solid #efdfb4;justify-content:center;align-items:center;gap:7px;height:30px;padding:0 16px;font-size:12px;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:72px;padding:0 28px;display:flex}.topbar-title{align-items:center;gap:10px;display:flex}.topbar h1{margin:3px 0 0;font-size:21px;line-height:1.2}.breadcrumb{color:var(--muted);font-size:11px}.topbar-actions{align-items:center;gap:8px;display:flex}.page-content{width:100%;max-width:1540px;margin:0 auto;padding:24px 28px 40px}.button,.icon-button{border:1px solid var(--border);color:#343a3e;background:#fff}.button{white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.button:hover,.icon-button:hover{background:#f7f9fa}.button-primary{color:#fff;background:var(--teal);border-color:var(--teal)}.button-primary:hover{background:var(--teal-dark)}.icon-button{border-radius:5px;place-items:center;width:36px;height:36px;padding:0;display:grid}.mobile-menu,.mobile-only{display:none}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.stat-card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:7px}.stat-card{flex-direction:column;min-height:124px;padding:19px 20px;display:flex}.stat-card span{color:var(--muted);font-size:13px}.stat-card strong{margin:10px 0 6px;font-size:27px;line-height:1}.stat-card small{color:#7c878c;font-size:11px}.dashboard-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:18px;display:grid}.panel{min-width:0;overflow:hidden}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:15px 18px;display:flex}.panel-header h2{margin:0;font-size:15px}.panel-header p{color:var(--muted);margin:5px 0 0;font-size:12px}.text-link,.text-button{color:var(--teal);font-size:12px;font-weight:600}.text-button{background:0 0;border:0;padding:4px}.quick-panel{padding-bottom:8px}.quick-action{border-radius:5px;align-items:center;gap:12px;margin:8px;padding:12px;display:flex}.quick-action:hover{background:#f2f7f6}.quick-action svg{color:var(--teal)}.quick-action div{flex-direction:column;display:flex}.quick-action strong{font-size:13px}.quick-action span{color:var(--muted);margin-top:3px;font-size:11px}.toolbar{border-bottom:1px solid var(--border);gap:8px;padding:14px 18px;display:flex}.search-field{min-width:240px;max-width:420px;height:36px;color:var(--muted);background:#fff;border:1px solid #cfd6d9;border-radius:5px;flex:1;align-items:center;gap:8px;padding:0 11px;display:flex}.search-field:focus-within{border-color:var(--teal);box-shadow:0 0 0 2px #087f781a}.search-field input{border:0;outline:0;width:100%;font-size:13px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{color:#6c767b;text-align:left;white-space:nowrap;background:#f7f9fa;padding:10px 14px;font-weight:600}td{white-space:nowrap;border-top:1px solid #edf0f1;height:58px;padding:9px 14px}tbody tr:hover{background:#fafcfc}.mono{font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.badge{border-radius:4px;align-items:center;min-height:22px;padding:0 7px;font-size:11px;font-weight:600;display:inline-flex}.badge-green{color:#116b48;background:#e9f7f0}.badge-amber{color:#865b0d;background:#fff3d6}.badge-gray{color:#586368;background:#eef1f2}.badge-red{color:#a33c32;background:#fdeceb}.product-cell{align-items:center;gap:10px;display:flex}.product-thumb{color:#315d5a;background:#dcecea;border-radius:4px;flex:none;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.product-cell span,.cell-sub{color:var(--muted);margin-top:3px;display:block}.empty-state{color:var(--muted);text-align:center;padding:40px;font-size:13px}.report-filter{margin-bottom:18px}.form-row{grid-template-columns:1fr 1fr 1.4fr auto;align-items:end;gap:12px;padding:18px;display:grid}.form-row label,.message-field{color:#50595e;flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.form-row input,.message-field textarea,.setting-block input{background:#fff;border:1px solid #cfd6d9;border-radius:5px;outline:0;width:100%;height:36px;padding:0 10px}.message-field textarea{resize:vertical;height:auto;padding:10px}.report-stats{margin-bottom:18px}.chart-panel{padding-bottom:20px}.bar-chart{justify-content:space-around;align-items:end;gap:18px;height:220px;padding:30px 7% 0;display:flex}.bar-column{width:8%;height:100%;color:var(--muted);flex-direction:column;justify-content:end;align-items:center;gap:8px;display:flex}.bar-column span{background:var(--teal);border-radius:3px 3px 0 0;width:100%;min-width:22px;max-width:44px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.full-span{grid-column:1/-1}.rule-list{padding:8px 18px 16px}.rule-row{border-bottom:1px solid #edf0f1;align-items:center;gap:10px;min-height:48px;font-size:13px;display:flex}.rule-row .badge{margin-left:auto}.rule-index{width:24px;height:24px;color:var(--muted);background:#eef2f2;border-radius:4px;place-items:center;font-size:11px;display:grid}.setting-block{grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:10px;padding:20px 18px 12px;font-size:12px;display:grid}.input-suffix{align-items:center;display:flex}.input-suffix input{border-radius:5px 0 0 5px}.input-suffix span{background:#f6f8f8;border:1px solid #cfd6d9;border-left:0;border-radius:0 5px 5px 0;place-items:center;height:36px;padding:0 10px;display:grid}.notice{color:#76510c;background:#fff8e7;border-radius:5px;margin:0 18px 18px;padding:10px;font-size:11px}.level-grid{grid-template-columns:repeat(5,1fr);padding:18px;display:grid}.level-item{border-right:1px solid var(--border);flex-direction:column;min-height:82px;padding:10px 14px;display:flex}.level-item:last-child{border:0}.level-item span,.level-item small{color:var(--muted);font-size:11px}.level-item strong{margin:8px 0;font-size:13px}.switch{background:#aeb7ba;border:0;border-radius:12px;width:42px;height:24px;padding:3px}.switch span{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;display:block}.switch.is-on{background:var(--teal)}.switch.is-on span{transform:translate(18px)}.lock-status{color:#76510c;background:#fff8e7;border:1px solid #f2e1ae;border-radius:6px;align-items:center;gap:12px;margin:18px;padding:14px;display:flex}.lock-status div{flex-direction:column;gap:3px;display:flex}.lock-status strong{font-size:13px}.lock-status span{font-size:11px}.message-field{margin:18px}.panel-actions{justify-content:flex-end;padding:0 18px 18px;display:flex}.category-list{padding:8px 18px 16px}.category-list>div{border-bottom:1px solid #edf0f1;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;height:40px;font-size:12px;display:grid}.category-list>div>span:first-child{color:var(--muted)}.info-list{margin:0;padding:8px 18px 16px}.info-list div{border-bottom:1px solid #edf0f1;justify-content:space-between;align-items:center;min-height:45px;font-size:12px;display:flex}.info-list dt{color:var(--muted)}.info-list dd{margin:0}.is-compact .sidebar{width:70px}.is-compact .brand-copy,.is-compact .nav-item span,.is-compact .account>div{display:none}.is-compact .brand{padding:0 18px}.is-compact .nav-item{justify-content:center;padding:0}.is-compact .account{justify-content:center;padding-inline:0}.is-compact .collapse-button svg{transform:rotate(180deg)}.is-compact .main-area{margin-left:70px}@media (width<=980px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.level-grid{grid-template-columns:repeat(3,1fr);gap:12px}.level-item{border:1px solid var(--border);border-radius:5px}.form-row{grid-template-columns:1fr 1fr}}@media (width<=720px){.sidebar,.is-compact .sidebar{width:250px;transform:translate(-100%)}.sidebar.is-open{transform:translate(0)}.is-compact .brand-copy,.is-compact .nav-item span,.is-compact .account>div{display:flex}.is-compact .nav-item{justify-content:flex-start;padding:0 12px}.main-area,.is-compact .main-area{margin-left:0}.sidebar-backdrop{z-index:20;background:#121c1f73;border:0;position:fixed;inset:0}.mobile-only,.mobile-menu{display:grid}.mobile-only{color:#fff;background:0 0;border-color:#ffffff26;margin-left:auto}.collapse-button{display:none}.topbar{height:64px;padding:0 16px}.topbar-actions>.icon-button{display:none}.topbar-actions .button{width:36px;padding:0;font-size:0}.topbar h1{font-size:18px}.page-content{padding:16px 12px 30px}.offline-banner{justify-content:flex-start;height:auto;min-height:34px}.stats-grid{gap:10px}.stat-card{min-height:108px;padding:14px}.stat-card strong{font-size:22px}.settings-grid{grid-template-columns:1fr}.full-span{grid-column:auto}.toolbar{flex-wrap:wrap;padding:12px}.search-field{min-width:100%;max-width:none}.toolbar .button-secondary,.toolbar .button-primary{flex:1;min-width:0;padding-inline:10px}.panel-header{padding:13px 14px}.panel-header>.badge{display:none}.goods-table-wrap{overflow:visible}.goods-table,.goods-table tbody{width:100%;display:block}.goods-table thead{display:none}.goods-table tr{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;display:grid}.goods-table td{white-space:normal;overflow-wrap:anywhere;border:0;min-width:0;height:auto;padding:7px 0}.goods-table td:before{content:attr(data-label);color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:600;display:block}.goods-table td:first-child,.goods-table td:nth-child(5){grid-column:1/-1}.goods-table td:first-child{padding-top:0;padding-bottom:10px}.goods-table td:first-child:before{display:none}.goods-table td:nth-child(2n){padding-right:12px}.goods-table td:last-child{text-align:right}.goods-table .product-thumb{width:40px;height:40px}.level-grid{grid-template-columns:repeat(2,1fr);padding:14px}.setting-block{grid-template-columns:auto 1fr}}@media (width<=430px){.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:12px}.stat-card span{font-size:12px}.stat-card strong{font-size:19px}.form-row,.level-grid{grid-template-columns:1fr}.topbar-actions{display:none}.bar-chart{gap:8px;padding-inline:4%}.toolbar{grid-template-columns:minmax(0,1fr);display:grid}.toolbar .search-field,.toolbar .button-secondary,.toolbar .button-primary{width:100%;min-width:0}}
