:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif;color:#172033;background:#f2f4f8;font-synthesis:none;--accent:#3154c8;--accent-soft:#e8edff;--surface:#fff;--border:#d7dbe5;--text:#172033;--muted:#687086;--formula:#ecf7ee;--locked:#f7f8fa}*{box-sizing:border-box}body{margin:0;background:#f2f4f8}button,input{font:inherit}.app-shell{min-height:100vh;background:#f2f4f8}.ant-layout-header{height:58px;padding:0 22px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.app-brand{display:flex;align-items:center;gap:10px;cursor:pointer;white-space:nowrap}.app-brand b{font-size:15px}.app-brand>span:last-child{font-size:11px;color:var(--muted)}.mini-brand{width:30px;height:30px;border-radius:7px;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:800}.ant-layout-content{padding:18px 20px 28px;width:100%}.excel-page{width:100%;max-width:none}.book-head{background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 26px #1c274314;padding:16px 18px 13px;margin-bottom:12px}.book-title{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.book-title h1{font-size:21px;margin:0 0 4px}.book-title p{margin:0;color:var(--muted);font-size:13px}.sheet-summary{display:flex;gap:24px}.sheet-summary span{font-size:12px;color:var(--muted);white-space:nowrap}.sheet-summary b{display:block;color:var(--text);font-size:18px;font-variant-numeric:tabular-nums}.sheet-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.sheet-toolbar .ant-input-search{max-width:360px}.import-callout{margin-top:12px;background:var(--accent-soft);border:1px solid #cdd7ff;border-radius:7px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.import-callout div{display:flex;flex-direction:column;gap:2px}.import-callout b{color:var(--accent)}.excel-workspace{background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 26px #1c274314;overflow:hidden}.formula-bar{height:38px;display:flex;align-items:center;border-bottom:1px solid var(--border);overflow:hidden}.name-box{width:92px;flex:0 0 92px;text-align:center;border-right:1px solid var(--border);font-size:12px;color:var(--muted)}.fx{padding:0 10px;color:var(--accent);font-style:italic;font-weight:700}.formula-text{font:12px ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.formula-bar .ant-btn{margin-right:6px}.excel-scroll{overflow:auto;max-height:590px;position:relative;scrollbar-width:thin;scrollbar-color:var(--accent) #e7e8ec}.excel-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.excel-grid th,.excel-grid td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:4px 6px;height:29px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.excel-grid thead th{position:sticky;z-index:4;background:#f7f8fc;text-align:center}.band-row th{top:0;height:27px;font-weight:700}.letter-row th{top:27px;height:25px;color:var(--muted);font-weight:500}.field-row th{top:52px;height:42px;white-space:normal;line-height:1.2}.owner-row th{top:94px;height:28px;color:var(--muted);font-size:10px;font-weight:500}.excel-grid .corner,.excel-grid .row-number{position:sticky;left:0;z-index:8;width:52px;min-width:52px;background:#f7f8fc;text-align:right;color:var(--muted);font-weight:500}.excel-grid thead .corner{z-index:10;text-align:center}.state-head,.state-cell{position:sticky!important;left:52px;z-index:7!important;width:92px;min-width:92px;background:#f7f8fc!important;box-shadow:5px 0 8px #0000000d}.state-cell{text-align:center}.band-基础信息{background:#e8eefc!important}.band-成本与开票{background:#fff0dc!important}.band-包装与物流{background:#fff8cf!important}.band-费用项{background:#f8f1dd!important}.band-利润与提成{background:#dff1e5!important}.band-归档信息{background:#ece8f8!important}.locked-row td{background:var(--locked)}.excel-grid td.computed,.excel-grid th.computed{background:var(--formula);color:#23653a}.excel-grid td.numeric{text-align:right;font-variant-numeric:tabular-nums}.excel-grid td.identity{font-weight:650}.excel-grid td{cursor:cell}.excel-grid td a{color:var(--accent);text-decoration:none}.sheet-status{display:inline-flex;border-radius:999px;padding:3px 7px;font-size:10px}.sheet-status.locked{background:#e4e5e8;color:#51545d}.sheet-status.editable{background:#e8edff;color:#3154c8}.row-number .anticon{font-size:9px;color:var(--accent);margin-right:4px}.sheet-empty{position:sticky;left:0;padding:58px}.sheet-loading{position:absolute;inset:0;background:#ffffffa6;display:grid;place-items:center}.sheet-tabs{display:flex;align-items:flex-end;gap:2px;padding:8px 12px 0}.sheet-tabs button{border:1px solid var(--border);background:#fff;padding:7px 15px;font-size:12px;font-weight:700;cursor:pointer}.sheet-tabs button.active{border-bottom:3px solid var(--accent)}.sheet-tabs span{font-size:11px;color:var(--muted);margin-left:10px;padding-bottom:7px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px;gap:16px}.page-head h1{font-size:22px;margin:4px 0}.page-head p{margin:0;color:var(--muted)}.page-head .ant-btn-link{padding-left:0}.detail-page{max-width:1600px;margin:0 auto}.section-card{margin-bottom:16px;border:1px solid var(--border);box-shadow:0 1px 2px #17171a0d}.locked-alert{margin-bottom:16px}.full,.ant-select{width:100%}.results{background:#fff}.result-value{font-size:16px;font-weight:650}.ms-num{font-variant-numeric:tabular-nums}.modal-actions{margin-bottom:16px}.import-modal .ant-modal-content{border-radius:12px}.import-rules{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0;color:#394157;font-size:13px}.import-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.import-preview-table{margin-top:16px}.import-errors{margin-top:12px;border:1px solid #ffccc7;border-radius:8px;padding:0 12px;background:#fff2f0}.import-errors .ant-list-item{display:flex;gap:12px;align-items:flex-start}.import-errors .ant-list-item span{color:#a61d24}.batch-history{margin-top:20px;border-top:1px solid var(--border);padding-top:12px}.batch-history h4{margin:0 0 8px}.batch-row{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;padding:5px 0}.login-page{min-height:100vh;display:grid;place-items:center;background:#f7f7f8;padding:24px}.login-card{width:min(400px,100%);border-radius:12px}.login-card .ant-card-body{padding:32px}.brand-mark{width:40px;height:40px;border-radius:10px;background:#17171a;color:#fff;display:grid;place-items:center;font-weight:800}@media(max-width:700px){.ant-layout-header{padding:0 12px}.ant-layout-header .ant-btn:first-child{display:none}.ant-layout-content{padding:10px 8px 20px}.book-head{padding:13px}.book-title h1{font-size:17px}.book-title p{font-size:12px}.sheet-summary{display:none}.sheet-toolbar{align-items:stretch;flex-direction:column}.sheet-toolbar .ant-input-search{max-width:none}.sheet-toolbar>.ant-space{display:grid;grid-template-columns:1fr 1fr}.sheet-toolbar .ant-btn{width:100%}.import-callout{align-items:flex-start;flex-direction:column}.import-callout .ant-btn{width:100%}.excel-scroll{max-height:590px}.excel-grid th,.excel-grid td{font-size:11px}.excel-grid .corner,.excel-grid .row-number{width:44px;min-width:44px}.state-head,.state-cell{left:44px!important;width:82px;min-width:82px}.sheet-tabs{overflow-x:auto;white-space:nowrap}.sheet-tabs span{display:none}.import-rules{grid-template-columns:1fr}.import-modal .ant-modal{max-width:calc(100vw - 16px);margin:8px auto}.import-modal .ant-modal-body{max-height:calc(100dvh - 120px);overflow:auto}.import-actions{position:sticky;bottom:0;background:#fff;padding-top:10px}.page-head{align-items:flex-start}.detail-page{padding:0}.ant-form-item .ant-input,.ant-form-item .ant-input-number-input{font-size:16px}}
