.vue-flow{position:relative;width:100%;height:100%;overflow:hidden;z-index:0;direction:ltr}.vue-flow__container{position:absolute;height:100%;width:100%;left:0;top:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.vue-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{left:50%;bottom:0;transform:translate(-50%,50%)}.vue-flow__handle-top{left:50%;top:0;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{position:absolute;z-index:5;margin:15px}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10}}:root{--vf-node-bg: #fff;--vf-node-text: #222;--vf-connection-path: #b1b1b7;--vf-handle: #555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{padding:10px;border-radius:3px;width:150px;font-size:12px;text-align:center;border-width:1px;border-style:solid;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-color:var(--vf-node-color)}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid #555}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color: var(--vf-node-color, #0041d0);--vf-handle: var(--vf-node-color, #0041d0);--vf-box-shadow: var(--vf-node-color, #0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color, #0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{outline:none;border:1px solid var(--vf-node-color, #0041d0)}.vue-flow__node-default{--vf-handle: var(--vf-node-color, #1a192b);--vf-box-shadow: var(--vf-node-color, #1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color, #1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{outline:none;border:1px solid var(--vf-node-color, #1a192b)}.vue-flow__node-output{--vf-handle: var(--vf-node-color, #ff0072);--vf-box-shadow: var(--vf-node-color, #ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color, #ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid var(--vf-node-color, #ff0072)}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{width:6px;height:6px;background:var(--vf-handle);border:1px solid #fff;border-radius:100%}:root{color-scheme:light;--bg: #eef1ed;--ink: #202722;--muted: #69736d;--line: #d6ddd5;--panel: #fbfcf8;--panel-strong: #ffffff;--green: #1f7a55;--green-dark: #155b42;--blue: #265d9c;--amber: #b97514;--red: #b8453d;--charcoal: #26302b;--shadow: 0 18px 45px rgba(37, 48, 43, .12);font-family:Microsoft YaHei,PingFang SC,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;color:var(--ink);background:linear-gradient(135deg,rgba(31,122,85,.08),transparent 32%),linear-gradient(315deg,rgba(185,117,20,.08),transparent 38%),var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.login-panel{width:min(940px,100%);display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;padding:22px;border:1px solid var(--line);border-radius:8px;background:#fbfcf8f2;box-shadow:var(--shadow)}.login-brand{grid-column:1 / -1;min-height:auto}.login-form{display:grid;gap:12px;align-content:start}.login-form label{display:grid;gap:7px;color:var(--muted);font-size:13px}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-card{display:grid;gap:6px;min-height:116px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-align:left}.account-card:hover{border-color:var(--green);box-shadow:0 0 0 3px #1f7a5514}.account-card strong{font-size:17px}.account-card span{color:var(--green-dark);font-weight:700}.account-card em{color:var(--muted);font-style:normal;font-size:13px}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:28px;padding:24px 18px;color:#eef5ee;background:linear-gradient(180deg,#1f2b26,#263b32);border-right:1px solid rgba(255,255,255,.12)}.brand{display:flex;align-items:center;gap:12px;min-height:54px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:#f2b84b;color:#1d2520}.brand strong,.brand span{display:block}.brand strong{font-size:18px;letter-spacing:0}.brand span{margin-top:4px;color:#a9b6ae;font-size:12px}.nav-list{display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:11px;width:100%;height:44px;padding:0 13px;border:1px solid transparent;border-radius:8px;color:#dbe5de;background:transparent;text-align:left}.nav-item:hover,.nav-item.active{color:#fff;background:#ffffff1a;border-color:#ffffff24}.logout-item{margin-top:auto}.side-status{display:flex;align-items:center;gap:8px;margin-top:auto;color:#b9c6bd;font-size:13px}.status-dot{width:8px;height:8px;border-radius:999px;background:#48c17a;box-shadow:0 0 0 5px #48c17a29}.workspace{min-width:0;padding:24px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.eyebrow{margin:0 0 5px;color:var(--green-dark);font-size:12px;font-weight:700;text-transform:uppercase}h1,h2{margin:0;letter-spacing:0}h1{font-size:30px}h2{font-size:18px}.toolbar{display:flex;align-items:center;gap:12px}.toast{max-width:min(420px,45vw);padding:10px 14px;border-radius:8px;color:#fff;font-size:14px;box-shadow:var(--shadow)}.toast.success{background:var(--green)}.toast.error{background:var(--red)}.icon-button,.primary-button,.secondary-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border:0;border-radius:8px}.icon-button{width:42px;color:var(--ink);background:var(--panel-strong);border:1px solid var(--line)}.icon-button.compact{width:30px;min-height:30px}.icon-button.tiny{width:22px;min-height:22px;border-radius:6px}.icon-button.accept{color:#fff;background:var(--green)}.icon-button.reject{color:#fff;background:var(--red)}.primary-button,.secondary-button,.danger-button{padding:0 16px;font-weight:700}.primary-button{color:#fff;background:var(--green)}.secondary-button{color:var(--green-dark);background:#dcefe5}.danger-button{color:#fff;background:var(--red)}.primary-button.full{width:100%;margin-top:14px}.compact-button{min-height:32px;padding:0 10px;font-size:13px}.danger-lite{color:var(--red)}.link-button{padding:0;border:0;color:var(--blue);background:transparent;font-weight:700;text-align:left}.link-button:hover{text-decoration:underline}.form-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.page-grid{display:grid;gap:18px}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.two-columns{grid-template-columns:420px minmax(0,1fr)}.wide{grid-column:span 2}.two-columns>.wide{grid-column:auto}.surface{min-width:0;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fbfcf8eb;box-shadow:var(--shadow)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:38px;margin-bottom:14px}.section-head.split{align-items:flex-start}.metric-panel{min-height:150px;padding:20px;border-radius:8px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow)}.metric-panel span,.metric-panel em{font-style:normal;color:#ffffffc7}.metric-panel strong{font-size:38px;line-height:1}.metric-stock{background:linear-gradient(135deg,#1f7a55,#155b42)}.metric-sale{background:linear-gradient(135deg,#265d9c,#193f70)}.metric-warning{background:linear-gradient(135deg,#b97514,#8b5509)}.metric-purchase{background:linear-gradient(135deg,#344039,#1f2b26)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.form-note{grid-column:1 / -1;margin:0;color:var(--green-dark);font-size:13px}.form-grid.single{grid-template-columns:1fr}.product-form{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.barcode-form{grid-template-columns:minmax(220px,1fr) minmax(180px,1fr) auto;margin-bottom:16px}.inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}input,select,textarea{width:100%;min-height:40px;padding:0 11px;border:1px solid #cfd8d1;border-radius:8px;color:var(--ink);background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #1f7a551f}textarea{min-height:92px;padding:10px 11px;resize:vertical}input:disabled{color:#68726c;background:#f0f4ef}select:disabled{color:#68726c;background:#f0f4ef}.select-with-badge{display:flex;align-items:center;gap:8px;min-width:0}.select-with-badge select{min-width:0}.search-box{display:flex;align-items:center;gap:7px;width:min(320px,100%);height:40px;padding:0 10px;border:1px solid #cfd8d1;border-radius:8px;background:#fff}.search-box input{min-height:0;padding:0;border:0;box-shadow:none}.inline-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.toggle{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted);font-size:14px}.toggle input{width:16px;min-height:16px}.chips,.line-items,.receipt,.plan-list,.compact-list{display:grid;gap:10px;margin-top:14px}.chips{display:flex;flex-wrap:wrap}.chip,.badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:13px;background:#e9eee9;color:var(--charcoal)}.line-item .badge,.barcode-chip .badge{min-height:22px;padding:0 7px;font-size:12px}.barcode-list{display:flex;flex-wrap:wrap;gap:6px;min-width:220px}.support-existing{min-width:0;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.barcode-chip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:3px 5px 3px 9px;border:1px solid var(--line);border-radius:8px;background:#f8faf7;white-space:nowrap}.support-editor{display:grid;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.support-editor.standalone{margin-top:0;padding-top:0;border-top:0}.compact-head{min-height:30px;margin-bottom:0}.support-grid{display:grid;gap:8px;max-height:280px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.check-row{display:flex;align-items:center;gap:8px;min-height:28px;color:var(--ink);font-size:14px}.check-row input{width:16px;min-height:16px}.support-row{justify-content:space-between;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:#f8faf7}.support-row span:first-child{min-width:0;flex:1}.badge.pending{background:#fff0cf;color:#7a4d08}.badge.ok{background:#dcefe5;color:#155b42}.badge.reject{background:#f7dedb;color:#8f2d27}.badge.auto{margin-left:8px;background:#dfe7ff;color:#24406f}.line-item,.receipt-row,.compact-row,.plan-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.line-item.stacked{align-items:flex-start}.line-item.stacked div{display:grid;gap:4px;min-width:0}.line-item span,.receipt-row span,.compact-row span,.plan-main span{color:var(--muted);font-size:13px}.compact-row div,.plan-main{display:grid;gap:4px;min-width:0}.compact-row strong,.plan-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-row em{font-style:normal;color:var(--amber);font-weight:700}.plan-main em,.approval-head em{color:var(--blue);font-size:13px;font-style:normal;font-weight:700}.receipt-total{display:flex;align-items:center;justify-content:space-between;padding:14px 2px 0;border-top:1px solid var(--line)}.receipt-total strong{font-size:24px;color:var(--green-dark)}.plan-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.plan-row.expanded{grid-template-columns:minmax(0,1fr) auto}.approval-card{display:grid;gap:14px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.approval-head,.approval-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.approval-head div{display:grid;gap:5px;min-width:0}.approval-head span{color:var(--muted);font-size:13px}.approval-head strong{font-size:17px}.approval-actions{justify-content:flex-end}.row-actions{display:flex;gap:8px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:#fff}.table-wrap.embedded{border-radius:6px}table{width:100%;border-collapse:collapse;min-width:720px}th,td{padding:12px 14px;border-bottom:1px solid #e7ece7;text-align:left;vertical-align:top;font-size:14px}th{position:sticky;top:0;z-index:1;color:#46524b;background:#f2f5f1;font-weight:700}tr:last-child td{border-bottom:0}tr.danger td{background:#fff8e8}.empty{color:var(--muted);text-align:center}.empty-state{margin:12px 0 0;color:var(--muted)}.detail-card{display:grid;gap:8px;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff}.detail-card span{color:var(--muted)}.inline-code{display:inline-block;max-width:180px;padding:3px 6px;border-radius:6px;color:#26302b;background:#f0f4ef;overflow-wrap:anywhere;font-size:12px}.qr-preview{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:14px;align-items:center;margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.qr-preview div:first-child{display:grid;gap:6px;min-width:0}.qr-preview span{color:var(--muted);font-size:13px}.qr-preview code{overflow-wrap:anywhere;color:var(--green-dark);font-size:12px}.qr-preview button{grid-column:1 / -1}.qr-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;width:132px;height:132px;padding:10px;border:1px solid #b8c3bb;border-radius:8px;background:#fff}.qr-grid i{border-radius:2px;background:#fff}.qr-grid i.filled{background:#202722}.scanner-panel{display:grid;gap:10px;margin-top:14px}.scanner-panel video{width:100%;max-height:260px;border-radius:8px;background:#111;object-fit:cover}.segmented{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}.segmented button{min-width:52px;min-height:34px;border:0;border-radius:6px;color:var(--muted);background:transparent}.segmented button.active{color:#fff;background:var(--green)}.chart-list{display:grid;gap:12px}.chart-dashboard{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.chart-dashboard>.surface:first-child{grid-column:1 / -1}.profit-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.profit-card{min-height:122px}.decision-grid .metric-panel strong{font-size:30px}.insight-table table{min-width:880px}.chart-card:first-of-type{grid-column:1 / -1}.echart{width:100%;height:360px}.rule-workspace{grid-template-columns:300px minmax(520px,1fr) 320px;align-items:start}.rule-toolbar,.rule-log-panel{grid-column:1 / -1}.rule-config-form{grid-template-columns:repeat(4,minmax(0,1fr))}.rule-config-form textarea{grid-column:span 2;min-height:40px}.rule-node-palette{display:grid;gap:10px}.rule-palette-item{display:grid;gap:5px;min-height:72px;padding:12px;border:1px solid var(--line);border-left-width:5px;border-radius:8px;background:#fff;color:var(--ink);text-align:left}.rule-palette-item.trigger{border-left-color:var(--green)}.rule-palette-item.control{border-left-color:var(--amber)}.rule-palette-item.data{border-left-color:var(--blue)}.rule-palette-item.action{border-left-color:var(--red)}.rule-palette-item span,.rule-row span{color:var(--muted);font-size:13px}.compact-head{margin-top:20px}.rule-row{align-items:flex-start}.rule-row .row-actions{flex-wrap:wrap;justify-content:flex-end}.rule-canvas-panel{min-height:620px}.rule-flow-canvas{width:100%;height:540px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(rgba(31,122,85,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(31,122,85,.05) 1px,transparent 1px),#fff;background-size:24px 24px}.vue-flow__node{min-width:148px;border:1px solid #bfcac3;border-radius:8px;box-shadow:0 10px 22px #25302b1f}.vue-flow__node.selected{border-color:var(--green);box-shadow:0 0 0 3px #1f7a5529}.rule-property-form{display:grid;gap:12px}.rule-property-form label{display:grid;gap:6px;color:var(--muted);font-size:13px}.variable-box{display:flex;flex-wrap:wrap;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.variable-box strong{width:100%}.variable-box code{padding:4px 7px;border-radius:6px;color:var(--green-dark);background:#eef6f0;font-size:12px}.chart-row{display:grid;grid-template-columns:92px minmax(0,1fr) 96px;align-items:center;gap:12px}.chart-row span{color:var(--muted);font-size:13px}.chart-row strong{text-align:right}.bar-track{height:16px;border-radius:999px;overflow:hidden;background:#e7ece7}.bar-fill{height:100%;border-radius:inherit}.bar-fill.orders{background:var(--blue)}.bar-fill.revenue{background:var(--green)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:24px;background:#141b177a}.modal-panel{width:min(920px,100%);max-height:min(86vh,860px);overflow:auto;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--panel-strong);box-shadow:var(--shadow)}.modal-panel.narrow{width:min(520px,100%)}.modal-table{margin-top:14px}.detail-grid{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px 14px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.detail-grid span{color:var(--muted)}.receipt-paper{display:grid;gap:10px;padding:18px;border:1px dashed #b8c3bb;border-radius:8px;background:#fffdf6}.flow-card{display:grid;gap:8px;margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.flow-card h3{margin:0;font-size:16px}.flow-card span,.flow-row span{color:var(--muted)}.flow-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #edf1ed}.flow-row:last-child{border-bottom:0}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.app-shell{grid-template-columns:88px minmax(0,1fr)}.brand div:last-child,.nav-item span,.side-status span:last-child{display:none}.nav-item{justify-content:center}.dashboard-grid,.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-dashboard,.rule-workspace{grid-template-columns:1fr}.rule-toolbar,.rule-log-panel{grid-column:auto}.rule-config-form,.profit-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-card,.chart-card:first-of-type,.chart-dashboard>.wide{grid-column:auto}}@media(max-width:760px){.app-shell{display:block}.login-panel,.account-grid{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:14px}.nav-list{grid-template-columns:repeat(4,minmax(58px,1fr))}.workspace{padding:16px}.topbar,.section-head.split{align-items:stretch;flex-direction:column}.dashboard-grid,.two-columns,.product-form,.form-grid,.rule-config-form,.profit-summary-grid{grid-template-columns:1fr}.wide{grid-column:auto}.toast{max-width:100%}.metric-panel{min-height:128px}.qr-preview{grid-template-columns:1fr}.echart{height:320px}.rule-flow-canvas{height:460px}}
