:root{color:#18212c;font-synthesis:none;background:#f3f5f7;font-family:Inter,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{grid-template-columns:220px 1fr;min-height:100vh;display:grid}aside{color:#dbe3ea;background:#17202a;flex-direction:column;height:100vh;padding:18px 12px;display:flex;position:sticky;top:0}.brand{padding:8px 10px 22px}.brand b{color:#fff;font-size:16px;display:block}.brand small,.identity small{color:#91a0ad;margin-top:5px;display:block}nav{gap:4px;display:grid}nav button{color:#bac6d1;text-align:left;background:0 0;border:0;border-radius:6px;padding:10px 12px}nav button.active,nav button:hover{color:#fff;background:#273442}.identity{border-top:1px solid #34414e;margin-top:auto;padding:14px 10px}.identity button{color:#91a0ad;background:0 0;border:0;padding:8px 0}main{min-width:0;padding:0 24px 40px}header{justify-content:space-between;align-items:center;height:78px;display:flex}header h1{margin:0;font-size:21px}header p{color:#6d7883;margin:5px 0 0;font-size:12px}.guard{color:#21633a;background:#e4f3e9;border:1px solid #bcdcc7;border-radius:999px;padding:5px 9px;font-size:12px}.panel{background:#fff;border:1px solid #dfe4e8;border-radius:7px;margin-bottom:16px;padding:18px}.panel h2{margin:0 0 14px;font-size:16px}.panel-title{justify-content:space-between;align-items:center;gap:16px;display:flex}.panel-title h2{margin:0}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.metric{background:#fff;border:1px solid #dfe4e8;border-radius:7px;padding:15px}.metric span{color:#6c7884;font-size:12px;display:block}.metric strong{margin-top:8px;font-size:21px;display:block}.metric.warn{background:#fffaf0;border-color:#efc27b}.status-grid{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.status-grid>div{border:1px solid #e3e7ea;border-radius:6px;align-items:center;gap:16px;padding:12px;display:flex}.chip{white-space:nowrap;background:#edf1f4;border-radius:4px;margin-right:6px;padding:3px 7px;font-size:12px;display:inline-flex}.chip.PENDING_APPROVAL,.chip.warn{color:#79530a;background:#fff0cf}.chip.ERP_WRITTEN,.chip.APPROVED{color:#22653b;background:#e1f2e6}.chip.REJECTED,.chip.ERP_FAILED,.chip.urgent{color:#9b2e25;background:#fee5e2}.chip.ERP_PENDING{color:#24568c;background:#e4eefb}.evidence{color:#596774;flex-wrap:wrap;gap:20px;padding:2px 4px 18px;font-size:12px;display:flex}.primary{color:#fff!important;background:#1769aa!important;border:1px solid #1769aa!important}.small{font-size:12px;padding:5px 8px!important}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.form label,.approval label{color:#596774;font-size:12px}.form input,.form select,.approval textarea,.panel-title input{background:#fff;border:1px solid #ccd4da;border-radius:5px;width:100%;margin-top:6px;padding:9px;display:block}.form .check{align-items:center;gap:8px;padding-top:24px;display:flex}.form .check input{width:auto;margin:0}.wide{grid-column:1/-1}.catalog .panel-title input{width:320px;margin:0}.product-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;margin-top:14px;display:grid;overflow:auto}.product-list button{text-align:left;background:#fff;border:1px solid #dde3e7;border-radius:5px;justify-content:space-between;padding:11px;display:flex}.product-list button:hover{background:#f6faff;border-color:#1769aa}.product-list small,td small{color:#6d7883;margin-top:4px;display:block}.product-list div:last-child{text-align:right}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:#65727e;background:#f6f7f8;font-weight:600}th,td{vertical-align:top;border-bottom:1px solid #e4e8eb;padding:10px}td input{border:1px solid #ccd4da;border-radius:4px;width:100%;min-width:82px;margin-bottom:4px;padding:7px}.lines table{min-width:980px}.danger{background:#fff6f5;border-color:#c9473d!important}.text{background:0 0;border:0}.danger-text{color:#a02d25}.sticky-actions{background:#fff;border-top:1px solid #e0e5e8;justify-content:space-between;align-items:center;margin:14px -18px -18px;padding:12px 18px;display:flex;position:sticky;bottom:0}.sticky-actions button,.approval-actions button,.panel-title button{background:#fff;border:1px solid #c9d1d7;border-radius:5px;padding:9px 14px}.error{color:#a32620;margin-right:16px}.success{color:#21633a;margin-top:10px}.empty,.loading{text-align:center;color:#75818c;padding:30px}.approval-list{max-width:720px;margin:auto}.approval .panel-title{align-items:flex-start}.approval h2{margin:10px 0 4px}.price-diff{text-align:right;grid-template-columns:auto auto;gap:3px 16px;display:grid}.price-diff strong{font-size:20px}.price-diff b{color:#a23a30;grid-column:1/-1}.notice{background:#fff8e8;border:1px solid #eed59c;border-radius:5px;margin:12px 0;padding:10px;font-size:13px}.approval textarea{resize:vertical;min-height:88px}.approval-actions{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.approval-actions button{background:#fff;border:1px solid #c9d1d7;border-radius:5px;padding:10px 15px}.reject{color:#a02d25;border-color:#dcb4af!important}.login{background:#eef1f3;place-items:center;min-height:100vh;padding:20px;display:grid}.login section{background:#fff;border:1px solid #d8dee3;border-radius:8px;width:min(420px,100%);padding:28px}.login h1{margin:0;font-size:23px}.login p{color:#697580}.login button{background:#fff;border:1px solid #d5dce1;border-radius:5px;justify-content:space-between;width:100%;margin-top:8px;padding:11px 12px;display:flex}.login button:hover{border-color:#1769aa}.login small{color:#76818b}@media (width<=760px){.shell{display:block}.shell aside{height:auto;padding:10px;position:static}.brand{padding:4px 6px 10px}nav{display:flex;overflow:auto}.identity{display:none}main{padding:0 12px 24px}header{height:66px}.metrics,.form-grid,.product-list{grid-template-columns:1fr}.catalog .panel-title{flex-direction:column;align-items:stretch}.catalog .panel-title input{width:100%}.approval .panel-title{display:block}.price-diff{text-align:left;margin-top:14px}.approval-actions{background:#fff;padding:10px 0;position:sticky;bottom:0}.approval-actions button{flex:1}}.header-actions{align-items:center;gap:10px;display:flex}.header-actions button{background:#fff;border:1px solid #ccd4da;border-radius:5px;padding:6px 9px}.header-user{color:#596774;font-size:12px}@media (width<=760px){.header-user,.guard{display:none}}.login label{color:#596774;margin-top:12px;font-size:12px;display:block}.login label input{border:1px solid #ccd4da;border-radius:5px;width:100%;margin-top:5px;padding:10px}.login-submit{justify-content:center!important;margin-top:16px!important}.demo-label{color:#76818b;border-top:1px solid #e2e6e9;margin:18px 0 4px;padding-top:14px;font-size:12px}.drawer-backdrop{z-index:20;background:#0f171f6b;justify-content:flex-end;display:flex;position:fixed;inset:0}.order-drawer{color:#18212c;background:#fff;width:min(520px,100%);height:100vh;padding:20px;overflow:auto;box-shadow:-8px 0 24px #0000001f}.order-drawer .panel-title button,.refresh-button{background:#fff;border:1px solid #ccd4da;border-radius:5px;padding:8px 10px}.order-drawer dl{background:#f6f7f8;grid-template-columns:90px 1fr;gap:8px;padding:12px;font-size:13px;display:grid}.order-drawer dt{color:#65727e}.order-drawer dd{margin:0}.detail-line{border-bottom:1px solid #e4e8eb;gap:4px;padding:10px 0;display:grid}.detail-line span,.detail-line small{color:#65727e;font-size:12px}.attachment-title{margin-top:18px}.upload-button{cursor:pointer;border:1px solid #ccd4da;border-radius:5px;padding:7px 10px;font-size:12px}.upload-button input{display:none}.attachment-row{text-align:left;background:#fff;border:0;border-bottom:1px solid #e4e8eb;justify-content:space-between;width:100%;padding:10px 0;display:flex}.refresh-button{width:100%;margin-top:18px}
