*{box-sizing:border-box}:root{--color-background-primary: #ffffff;--color-background-secondary: #f8f9fa;--color-background-tertiary: #f1f3f5;--color-text-primary: #1e293b;--color-text-secondary: #475569;--color-text-tertiary: #94a3b8;--color-border-primary: #e2e8f0;--color-border-secondary: #cbd5e1;--color-border-tertiary: #e2e8f0;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", monospace}body{font-family:var(--font-sans);margin:0;padding:20px;background:#f1f5f9;color:var(--color-text-primary)}.app-container{max-width:1600px;margin:0 auto}.header{margin-bottom:24px}.header h1{font-size:24px;font-weight:600;margin:0 0 8px;color:#0f172a}.header p{font-size:14px;color:var(--color-text-secondary);margin:0}.main-layout{display:flex;gap:20px;flex-wrap:wrap}.tree-panel{flex:1;min-width:700px;background:#fff;border-radius:12px;border:1px solid var(--color-border-primary);overflow:hidden}.preview-panel{flex:1;min-width:550px;background:#fff;border-radius:12px;border:1px solid var(--color-border-primary);overflow:hidden;display:flex;flex-direction:column}.panel-header{padding:16px 20px;background:var(--color-background-secondary);border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.panel-title{font-weight:600;font-size:16px;color:var(--color-text-primary)}.panel-actions{display:flex;gap:8px}.tree-content{padding:16px 20px;max-height:650px;overflow-y:auto}.tree-node{margin-left:0;-webkit-user-select:none;user-select:none}.tree-node-content{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;transition:all .15s;flex-wrap:wrap}.tree-node-content:hover{background:var(--color-background-secondary)}.tree-node-content.selected{background:#e6f1fb;border:.5px solid #b5d4f4}.level-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.node-name{font-size:13px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sku-node-container{display:flex;align-items:center;gap:12px;flex:1;flex-wrap:wrap}.product-name{font-size:13px;font-weight:500;color:#1e293b}.sku-code-badge{font-family:var(--font-mono);font-size:10px;color:#3b6d11;background:#eaf3de;padding:2px 6px;border-radius:4px}.level-badge{font-size:10px;padding:2px 8px;border-radius:12px;background:var(--color-background-tertiary);color:var(--color-text-secondary);flex-shrink:0}.commodity-badge{font-size:9px;padding:2px 6px;border-radius:10px;background:#fef3c7;color:#d97706;flex-shrink:0;cursor:help}.override-badge{font-size:9px;padding:2px 6px;border-radius:10px;background:#fed7aa;color:#9a3412;flex-shrink:0}.composition-info{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-left:28px;margin-top:2px;margin-bottom:6px;padding:4px 10px;background:#f8fafc;border-radius:6px;border-left:2px solid #3b6d11}.composition-label{font-size:10px;font-weight:500;color:#64748b;letter-spacing:.5px}.composition-items{display:flex;flex-wrap:wrap;gap:6px}.composition-item{background:#eaf3de;padding:1px 6px;border-radius:10px;font-size:9px;font-family:var(--font-mono);color:#3b6d11}.node-actions{display:flex;gap:4px;flex-shrink:0}.action-btn{font-size:11px;padding:2px 6px;border-radius:4px;border:.5px solid var(--color-border-secondary);background:#fff;cursor:pointer;transition:all .1s}.action-btn:hover{background:var(--color-background-tertiary)}.action-btn.primary{background:#e6f1fb;border-color:#b5d4f4;color:#185fa5}.action-btn.danger{background:#fcebeb;border-color:#f7c1c1;color:#e24b4a}.action-btn.success{background:#eaf3de;border-color:#c0dd97;color:#3b6d11}.action-btn.warning{background:#fef3c7;border-color:#fde68a;color:#d97706}.children-container{margin-left:20px;border-left:1px dashed var(--color-border-secondary);padding-left:8px;margin-top:2px}.inline-input{display:flex;align-items:center;gap:6px;margin-left:28px;margin-top:6px;margin-bottom:6px}.inline-input input{font-size:13px;padding:4px 8px;border:1.5px solid #185fa5;border-radius:6px;outline:none;width:200px}.preview-tabs{display:flex;border-bottom:1px solid var(--color-border-primary);padding:0 20px;gap:4px}.preview-tab{padding:10px 16px;font-size:13px;cursor:pointer;border:none;background:none;color:var(--color-text-tertiary);transition:all .1s}.preview-tab.active{color:#185fa5;border-bottom:2px solid #185fa5;margin-bottom:-1px}.preview-content{flex:1;padding:20px;overflow-y:auto;max-height:500px}.json-viewer{background:#1e293b;color:#e2e8f0;padding:16px;border-radius:8px;font-family:var(--font-mono);font-size:12px;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;width:90%;max-width:900px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-header{padding:16px 20px;border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center}.modal-body{padding:20px}.grade-row{display:flex;align-items:center;justify-content:space-between;padding:12px;border-bottom:.5px solid var(--color-border-tertiary)}.grade-info{flex:2}.grade-name{font-weight:600;font-size:14px}.grade-range{font-size:11px;color:var(--color-text-tertiary);margin-left:8px}.btn{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:none;transition:all .1s}.btn-primary{background:#185fa5;color:#fff}.btn-primary:hover{background:#0e4a82}.btn-secondary{background:var(--color-background-secondary);border:.5px solid var(--color-border-secondary);color:var(--color-text-primary)}.btn-success{background:#3b6d11;color:#fff}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:10px;font-weight:500}.badge-info{background:#e6f1fb;color:#185fa5}.breadcrumb{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:10px 12px;background:var(--color-background-secondary);border-radius:8px;margin-bottom:16px;font-size:11px}.saved-configs{margin-top:16px;border-top:1px solid var(--color-border-primary);padding-top:16px}.config-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border:.5px solid var(--color-border-tertiary);border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .1s}.config-item:hover{background:var(--color-background-secondary)}.empty-state{text-align:center;padding:60px 20px;color:var(--color-text-tertiary)}.empty-state-icon{font-size:48px;margin-bottom:16px}select,input{font-family:var(--font-sans)}.commodity-select{width:100%;padding:8px 12px;border:.5px solid var(--color-border-secondary);border-radius:6px;font-size:13px;background:#fff}.dynamic-commodity-row{background:var(--color-background-secondary);padding:12px;border-radius:8px;margin-bottom:10px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.main-percent-row{margin-bottom:20px;padding:16px;background:#f1f5f9;border-radius:8px}.slider-value{font-size:14px;font-weight:600;color:#185fa5}.inheritance-info{background:#e0e7ff;padding:12px;border-radius:8px;margin-bottom:16px;font-size:12px;color:#4338ca}.add-btn{width:100%;margin-top:8px;background:#e6f1fb;border:1px dashed #185fa5;color:#185fa5}.weight-input{width:100px;padding:8px;border-radius:4px;border:.5px solid var(--color-border-secondary);text-align:center}:root{--primary: #1976d2;--bg-color: #f5f7fa;--text-dark: #333333;--sidebar-width: 300px}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:Inter,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;font-size:.85rem;overflow-x:hidden}img{max-width:100%;height:auto}.responsive-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.hide-xs{display:none!important}@media (min-width: 600px){.hide-xs{display:initial!important}}@media (max-width: 900px){.hide-md{display:none!important}}.admin-main-content{transition:margin-left .3s ease;min-height:calc(100vh - 64px)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 600px){.MuiContainer-root{padding-left:12px!important;padding-right:12px!important}.MuiTableCell-root{padding:8px 6px!important;font-size:.75rem!important}.MuiCardContent-root{padding:12px!important}.MuiButton-root{font-size:.75rem!important}h1,.MuiTypography-h1{font-size:1.6rem!important}h2,.MuiTypography-h2{font-size:1.3rem!important}h3,.MuiTypography-h3{font-size:1.1rem!important}}
