:root{--text: #17212b;--muted: #5f7080;--line: #d8e1e8;--line-soft: #e7edf2;--surface: #ffffff;--surface-muted: #f7f9fb;--brand: #087f75;--brand-strong: #066b63;--brand-soft: #e5f5f2;--danger: #c0392b;--warn: #a86614;--shadow-soft: 0 10px 28px rgba(24, 39, 54, .06);color:var(--text);background:#f3f6f8;font-family:Inter,Microsoft YaHei,PingFang SC,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#ffffffa6 0,#fff0 220px),#f3f6f8}button,input,select{font:inherit}button{border:0;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;transition:transform .15s ease,border-color .15s ease,background .15s ease}button:hover{transform:translateY(-1px)}button:active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.55;transform:none}button:focus-visible{outline:3px solid rgba(8,127,117,.18);outline-offset:2px}.app-shell{min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 32px;background:#fffffff5;border-bottom:1px solid var(--line);box-shadow:0 8px 24px #1827360a;position:sticky;top:0;z-index:5}.topbar h1{margin:0;font-size:24px;line-height:1.2;letter-spacing:0}.topbar p{margin:6px 0 0;color:var(--muted);font-size:14px}.topbar-actions,.filters{display:flex;align-items:center;gap:10px}.primary{background:var(--brand);color:#fff}.ghost{background:var(--surface);color:#27333b;border:1px solid #cbd7df}.primary:hover{background:var(--brand-strong)}.ghost:hover{background:#f8fafb;border-color:#b9c7d1}.compact{min-height:34px;padding:0 10px}main{width:min(1500px,calc(100% - 32px));margin:20px auto 40px}.usage-guide{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 14px;align-items:center;margin-bottom:14px;padding:12px 14px;border:1px solid rgba(8,127,117,.14);border-radius:8px;background:linear-gradient(180deg,#fff,#f8fbfa);box-shadow:var(--shadow-soft)}.usage-guide-title{min-width:76px;color:#25413f;font-size:14px;font-weight:800}.usage-steps{display:flex;flex-wrap:wrap;gap:8px;min-width:0}.usage-step{min-width:0;min-height:30px;padding:0 10px 0 6px;border:1px solid rgba(8,127,117,.16);border-radius:999px;background:var(--brand-soft);color:#25413f;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;white-space:nowrap}.usage-step strong{width:20px;height:20px;border-radius:999px;background:var(--brand);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;line-height:1}.usage-guide p{grid-column:2;min-width:0;margin:-2px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.mode-band{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-soft)}.mode-band strong{display:block;margin-bottom:4px;color:#22313d;font-size:14px}.mode-band p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.mode-toggle{flex:0 0 auto}.upload-band{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1.2fr) minmax(220px,.8fr);gap:14px;margin-bottom:16px}.upload-band.three{grid-template-columns:repeat(3,minmax(240px,1fr))}.status-band{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,.7fr);gap:14px;margin-bottom:16px}.file-drop,.status-line,.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow-soft)}.file-drop{min-height:86px;padding:16px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.file-drop:hover{background:#fbfdfd;border-color:#087f7559;transform:translateY(-1px)}.file-drop input{display:none}.file-icon{width:42px;height:42px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--brand);background:var(--brand-soft);flex:0 0 auto}.file-drop strong,.file-drop small{display:block}.file-drop small{color:var(--muted);margin-top:4px;word-break:break-all}.status-line{min-height:86px;padding:16px;display:flex;align-items:center;gap:10px;color:#4f6170}.control-grid{display:grid;grid-template-columns:minmax(420px,1.1fr) minmax(360px,.9fr);gap:16px;margin-bottom:16px;align-items:start}.parent-switcher{margin-top:16px}.panel{padding:18px;margin-bottom:16px}.panel-title,.panel-title>div{display:flex;align-items:center;gap:9px}.panel-title{margin-bottom:14px}.panel-title.split{justify-content:space-between}.panel-title h2{margin:0;font-size:17px;line-height:1.2;letter-spacing:0}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:12px}.form-grid.params{grid-template-columns:repeat(4,minmax(150px,1fr));margin-bottom:14px}label{color:#4f6170;font-size:13px}input,select{width:100%;min-height:38px;border:1px solid #cbd7df;border-radius:8px;padding:0 10px;color:var(--text);background:var(--surface);outline:none;margin-top:6px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}input:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 3px #087f751f}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px}.stat-grid.wide{grid-template-columns:repeat(6,minmax(110px,1fr))}.stat{min-height:74px;border:1px solid var(--line-soft);border-radius:8px;padding:12px;background:var(--surface-muted)}.stat span{color:var(--muted);font-size:13px}.stat strong{display:block;margin-top:8px;font-size:24px;line-height:1.08;overflow-wrap:anywhere}.stat.compact-value strong{font-size:22px}.stat.danger strong{color:var(--danger)}.stat.warn strong{color:var(--warn)}.stat.accent strong{color:var(--brand)}.panel-context{color:var(--muted);font-size:13px;font-weight:700}.dashboard-panel{overflow:visible}.core-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.core-card{min-height:78px;border:1px solid var(--line-soft);border-radius:8px;padding:13px 14px;background:var(--surface-muted)}.core-card span{display:block;color:var(--muted);font-size:13px;line-height:1.25}.core-card strong{display:block;margin-top:8px;font-size:26px;line-height:1.08;overflow-wrap:anywhere}.core-card.accent strong{color:var(--brand)}.core-card.danger strong{color:var(--danger)}.core-card.warn strong{color:var(--warn)}.dashboard-lower{display:grid;grid-template-columns:minmax(0,3fr) minmax(280px,.85fr);gap:14px;align-items:start}.risk-summary-panel,.abnormal-summary,.param-group{border:1px solid var(--line-soft);border-radius:8px;background:#fff}.risk-summary-panel,.abnormal-summary{padding:14px}.sub-title-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}.sub-title-row h3,.param-group h3{margin:0;font-size:15px;line-height:1.2}.risk-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.risk-summary-card{min-width:0;min-height:104px;border:1px solid var(--line-soft);border-left:4px solid #7b8794;border-radius:8px;padding:10px 12px;background:#fbfdff}.risk-summary-card.risk-sold_out{border-left-color:var(--danger)}.risk-summary-card.risk-high{border-left-color:#d65a35}.risk-summary-card.risk-medium{border-left-color:#c9851b}.risk-summary-card.risk-low{border-left-color:#2f6f9f}.risk-summary-card.risk-safe{border-left-color:#27835c}.risk-summary-card.risk-stale{border-left-color:#7b8794}.risk-summary-card.risk-no_sales{border-left-color:#7b5fa7}.risk-summary-head{margin-bottom:7px;font-weight:700}.risk-summary-count{display:block;margin-bottom:8px;font-size:20px;line-height:1.1}.risk-summary-values{display:grid;gap:4px;margin:0}.risk-summary-values div,.abnormal-category-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.risk-summary-values dt,.risk-summary-values dd{margin:0}.risk-summary-values dt,.abnormal-category-row span,.abnormal-total-card span{color:var(--muted);font-size:12px;line-height:1.35}.risk-summary-values dd,.abnormal-category-row strong{color:var(--text);font-weight:700}.abnormal-total-card{border:1px solid #f5c98b;border-radius:8px;padding:10px 12px;background:#fff8ed;margin-bottom:8px}.abnormal-total-card strong{display:block;margin-top:5px;color:var(--warn);font-size:24px;line-height:1.05}.abnormal-category-list{display:grid;gap:2px}.abnormal-category-row{min-height:34px;border-bottom:1px solid var(--line-soft)}.abnormal-category-row:last-child{border-bottom:0}.params-layout{display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(360px,.92fr);gap:14px;align-items:start}.params-left{display:grid;gap:12px}.param-group{padding:14px}.param-group h3{margin-bottom:12px}.param-grid{display:grid;gap:12px}.param-grid.cycle,.param-grid.returns{grid-template-columns:repeat(3,minmax(0,1fr))}.coefficient-list{border:1px solid var(--line-soft);border-radius:8px;overflow:hidden}.coefficient-row{display:grid;grid-template-columns:minmax(92px,.9fr) minmax(88px,.8fr) minmax(90px,1fr) 68px;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line-soft)}.coefficient-row.header{min-height:38px;background:var(--surface-muted);color:var(--muted);font-size:12px;font-weight:700}.coefficient-row:last-child{border-bottom:0}.coefficient-row.expanded{background:#fbfdfd}.coefficient-row .mini-input{width:100%;min-width:0}.note-state{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;min-width:0}.note-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-state.has-note{color:var(--brand-strong);font-weight:700}.note-dot{width:7px;height:7px;border-radius:999px;background:var(--brand);flex:0 0 auto}.note-toggle{min-width:56px;padding:0 8px}.coefficient-note-row{grid-column:1 / -1;display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:center;color:var(--muted)}.coefficient-note-row input{margin-top:0}.switcher-row,.export-actions,.segmented{display:flex;align-items:center;gap:10px}.switcher-row{align-items:stretch}.switcher-row .search-box{flex:0 0 320px}.switcher-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.model-name-panel{margin-top:14px;padding:14px;border:1px solid #d6e2e7;border-radius:8px;background:#f8fbfc}.model-name-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.model-name-panel-head h3{margin:0;font-size:15px;line-height:1.25}.model-name-panel-head p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.model-name-panel-head>span{flex:0 0 auto;color:var(--brand-strong);font-size:13px;font-weight:800}.model-name-grid{display:grid;gap:8px}.model-name-row{display:grid;grid-template-columns:minmax(132px,1fr) minmax(158px,1.05fr) minmax(132px,1fr) minmax(54px,.35fr) minmax(170px,1.25fr) minmax(72px,.48fr) minmax(260px,auto);gap:10px;align-items:center;min-width:0;padding:10px;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface)}.model-name-row.header{padding:0 10px;min-height:26px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.model-name-row.merge{border-color:#f0c36d;background:#fffaf0}.model-auto,.model-effective,.model-product-summary{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-name-input-wrap{min-width:0}.model-name-input-wrap>span{display:none}.model-name-input-wrap input{margin-top:0}.model-sku-count{text-align:right;font-variant-numeric:tabular-nums;font-weight:800}.model-name-status{justify-self:start;min-height:26px;padding:0 8px;border-radius:999px;display:inline-flex;align-items:center;color:#52636d;background:#edf2f5;font-size:12px;font-weight:800;white-space:nowrap}.model-name-status.custom{color:var(--brand-strong);background:var(--brand-soft)}.model-name-status.pending,.model-name-status.restore{color:#885f13;background:#fff4d8}.model-name-status.merge{color:#92400e;background:#fde7b3}.model-name-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.model-merge-note{grid-column:2 / -1;color:#895416;font-weight:700;line-height:1.4}.model-detail-list{grid-column:1 / -1;display:grid;gap:6px;padding:8px;border-radius:8px;background:#f4f8fa}.model-detail-row{display:grid;grid-template-columns:minmax(130px,.58fr) minmax(0,1fr);gap:10px;align-items:center;min-width:0;padding:6px 8px;border:1px solid var(--line-soft);border-radius:6px;background:var(--surface);font-size:12px}.model-detail-row strong,.model-detail-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-name-empty{padding:16px;border:1px dashed #cbd7df;border-radius:8px;color:var(--muted);background:var(--surface)}.model-merge-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10040;display:flex;align-items:center;justify-content:center;padding:18px;background:#15232d57}.model-merge-dialog{width:min(620px,100%);max-height:min(86vh,680px);overflow:auto;border:1px solid #c9d6df;border-radius:10px;background:var(--surface);box-shadow:0 28px 80px #18273647}.model-merge-head,.model-merge-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.model-merge-head{padding:16px 16px 12px;border-bottom:1px solid var(--line-soft)}.model-merge-head h3{margin:0;font-size:18px}.model-merge-head p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.5}.model-merge-body{display:grid;gap:12px;padding:16px}.model-merge-target,.model-merge-facts>div{display:grid;gap:4px;min-width:0}.model-merge-target{padding:12px;border:1px solid rgba(8,127,117,.18);border-radius:8px;background:var(--brand-soft)}.model-merge-target span,.model-merge-label,.model-merge-facts span{color:var(--muted);font-size:12px;font-weight:800}.model-merge-target strong,.model-merge-facts strong{min-width:0;overflow-wrap:anywhere}.model-merge-section{display:grid;gap:8px}.model-merge-chip-list{display:flex;flex-wrap:wrap;gap:8px}.model-merge-chip{max-width:100%;min-height:28px;padding:5px 9px;border:1px solid #d6e0e7;border-radius:999px;background:#f7fafb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800}.model-merge-facts{display:grid;grid-template-columns:minmax(100px,.4fr) minmax(0,1fr);gap:10px}.model-merge-facts>div{padding:10px;border:1px solid var(--line-soft);border-radius:8px;background:#fbfcfd}.model-merge-note-text{margin:0;color:#40545f;font-size:13px;line-height:1.6}.model-merge-actions{justify-content:flex-end;padding:12px 16px 16px;border-top:1px solid var(--line-soft)}.coefficient-panel{overflow:hidden}.coefficient-table,.decision-table,.trend-table{overflow:auto;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface);scrollbar-color:#b8c6cf #edf2f5;scrollbar-gutter:stable}.coefficient-table table{min-width:720px}.decision-table table{min-width:2020px}.decision-table.standard-table table{min-width:2180px}.trend-table{max-height:60vh;--trend-header-row-height: 78px}.trend-table table{min-width:2860px}.trend-table.standard-table table{min-width:2820px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:10px 12px;border-bottom:1px solid var(--line-soft);text-align:left;white-space:nowrap}th{background:#f4f7f9;color:#4f6170;font-weight:700;position:sticky;top:0;z-index:1}th.wrap-header{min-width:112px;white-space:normal;line-height:1.25}th.stock-boundary,td.stock-boundary{border-right:2px solid #cbd7df}.numeric-cell{text-align:right;font-variant-numeric:tabular-nums}.date-cell,.risk-cell{text-align:center}.numeric-cell .header-help{justify-content:flex-end}.date-cell .header-help,.risk-cell .header-help{justify-content:center}.table-header-control{display:inline-flex;align-items:center;justify-content:inherit;gap:4px;max-width:100%}.header-help{display:inline-flex;align-items:center;gap:4px;max-width:100%;vertical-align:middle}.header-help-label{min-width:0}.header-help-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border:0;border-radius:50%;padding:0;background:transparent;color:#78909c;cursor:help;opacity:.9}.header-help-icon:hover,.header-help-icon:focus{color:var(--accent);outline:none}.header-tooltip{position:fixed;z-index:10000;padding:8px 10px;border-radius:6px;background:#101c26f5;color:#fff;box-shadow:0 8px 24px #101c2633;font-size:12px;font-weight:600;line-height:1.45;pointer-events:none;text-align:left;white-space:normal}.header-tooltip.below{transform:translate(-50%)}.header-tooltip.above{transform:translate(-50%,-100%)}.header-filter-button{position:relative;width:28px;height:28px;min-height:28px;padding:0;border-radius:50%;border:1px solid transparent;background:transparent;color:#7d909c;flex:0 0 auto}.header-filter-button:hover,.header-filter-button:focus{border-color:#087f752e;background:#087f7514;color:var(--brand);outline:none}.header-filter-button.active{color:var(--brand);background:var(--brand-soft)}.header-filter-button.active:after{content:"";position:absolute;right:5px;top:5px;width:6px;height:6px;border:1px solid #ffffff;border-radius:50%;background:var(--brand)}.numeric-cell .table-header-control{justify-content:flex-end}.date-cell .table-header-control,.risk-cell .table-header-control{justify-content:center}.decision-filter-bar{min-height:40px;margin:-4px 0 10px;padding:8px 10px;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface-muted);color:var(--muted);display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;line-height:1.5}.decision-filter-bar.active{border-color:#087f7533;background:#f4fbf9;color:#2d4d49}.decision-filter-bar>span{min-width:0;overflow-wrap:anywhere}.decision-filter-popover{position:fixed;z-index:10020;max-height:min(430px,calc(100vh - 24px));overflow:auto;padding:12px;border:1px solid #c7d4dc;border-radius:8px;background:#fff;box-shadow:0 18px 40px #1827362e;color:var(--text)}.filter-popover-head,.filter-popover-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.filter-popover-head{margin-bottom:10px}.filter-popover-body{display:grid;gap:10px}.filter-popover-actions{margin-top:12px;padding-top:10px;border-top:1px solid var(--line-soft)}.icon-button{width:30px;min-width:30px;min-height:30px;padding:0}.filter-option-list{display:grid;gap:8px}.filter-check-row{min-height:32px;display:flex;align-items:center;gap:8px;color:var(--text)}.filter-check-row input{width:16px;min-height:16px;margin:0}.filter-option-label{min-width:0;overflow-wrap:anywhere}.filter-swatch{margin:0}.empty-inline{color:var(--muted);font-size:13px}.filter-text-field{display:grid;gap:4px}.filter-text-field input,.filter-range-row input{margin-top:4px}.filter-quick-row{display:flex;flex-wrap:wrap;gap:8px}.filter-quick{min-height:32px;padding:0 10px;border:1px solid #cbd7df;background:var(--surface);color:#324550}.filter-quick.active{border-color:#087f754d;background:var(--brand-soft);color:var(--brand-strong);font-weight:700}.filter-range-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.trend-table thead tr:first-child th{top:0}.trend-table thead tr:nth-child(2) th{top:var(--trend-header-row-height);z-index:2}.trend-table thead tr:first-child th:not([rowspan]){height:var(--trend-header-row-height);min-height:var(--trend-header-row-height);box-sizing:border-box}.month-header{min-width:98px;text-align:center}.month-header .month-main,.month-header small{display:block}.month-header .header-help,.coef-header .header-help,.end-stock-group .header-help{justify-content:center}.month-header small,.coef-header{font-size:12px;line-height:1.15}.month-header small{margin-top:3px;color:#6b7b86;font-weight:700}.coef-header{min-width:98px;color:#687886;text-align:center;white-space:nowrap}.month-history{background:#f6f9fb}.month-current{background:#eaf6f3}.month-future{background:#fbf8ef}.month-cell{min-width:98px;text-align:right}.current-month-cell{min-width:158px;color:#17423f;font-weight:700;text-align:right;box-shadow:inset 2px 0 #087f7559,inset -2px 0 #087f7524}.current-month-cell>span{display:block;line-height:1.35}.current-month-cell .compound-number-line{display:grid;grid-template-columns:minmax(56px,auto) minmax(44px,max-content);gap:8px;justify-content:end;align-items:baseline}.current-month-cell .compound-number-line-split{grid-template-columns:auto minmax(34px,max-content) auto minmax(34px,max-content);gap:6px}.compound-number-label{color:#53706f;font-weight:600}.compound-number-value{min-width:34px;text-align:right;font-variant-numeric:tabular-nums}.compound-number-divider{color:#6f8583}.end-stock-group{min-width:116px;text-align:center;background:#f2f6f8}.end-stock-boundary{border-left:2px solid #cbd7df}tbody tr:hover{background:#f9fbfb}.strong,.sku-cell{font-weight:700}.mini-input{width:86px;margin:0}.note-input{width:180px;margin:0}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.search-box{width:min(320px,40vw);display:flex;align-items:center;gap:8px;border:1px solid #cbd7df;border-radius:8px;padding:0 10px;min-height:38px;color:var(--muted);background:var(--surface)}.search-box input{border:0;box-shadow:none;margin:0;min-height:34px;padding:0}.search-box input:focus{box-shadow:none}.decision-table{max-height:58vh}.trend-table.apparel-table thead tr:first-child th:nth-child(1),.trend-table.apparel-table tbody td:nth-child(1),.trend-table.apparel-table thead tr:first-child th:nth-child(2),.trend-table.apparel-table tbody td:nth-child(2),.trend-table.apparel-table thead tr:first-child th:nth-child(3),.trend-table.apparel-table tbody td:nth-child(3),.trend-table.apparel-table thead tr:first-child th:nth-child(4),.trend-table.apparel-table tbody td:nth-child(4),.trend-table.apparel-table thead tr:first-child th:nth-child(5),.trend-table.apparel-table tbody td:nth-child(5),.trend-table.standard-table thead tr:first-child th:nth-child(1),.trend-table.standard-table tbody td:nth-child(1),.trend-table.standard-table thead tr:first-child th:nth-child(2),.trend-table.standard-table tbody td:nth-child(2),.trend-table.standard-table thead tr:first-child th:nth-child(3),.trend-table.standard-table tbody td:nth-child(3),.trend-table.standard-table thead tr:first-child th:nth-child(4),.trend-table.standard-table tbody td:nth-child(4){position:sticky;z-index:2}.trend-table.apparel-table thead tr:first-child th:nth-child(1),.trend-table.apparel-table tbody td:nth-child(1){left:0;min-width:112px}.trend-table.apparel-table thead tr:first-child th:nth-child(2),.trend-table.apparel-table tbody td:nth-child(2){left:112px;min-width:170px}.trend-table.apparel-table thead tr:first-child th:nth-child(3),.trend-table.apparel-table tbody td:nth-child(3){left:282px;min-width:78px}.trend-table.apparel-table thead tr:first-child th:nth-child(4),.trend-table.apparel-table tbody td:nth-child(4){left:360px;min-width:86px}.trend-table.apparel-table thead tr:first-child th:nth-child(5),.trend-table.apparel-table tbody td:nth-child(5){left:446px;min-width:96px;box-shadow:8px 0 14px #1827360f}.trend-table.standard-table thead tr:first-child th:nth-child(1),.trend-table.standard-table tbody td:nth-child(1){left:0;min-width:160px}.trend-table.standard-table thead tr:first-child th:nth-child(2),.trend-table.standard-table tbody td:nth-child(2){left:160px;min-width:240px}.trend-table.standard-table thead tr:first-child th:nth-child(3),.trend-table.standard-table tbody td:nth-child(3){left:400px;min-width:170px}.trend-table.standard-table thead tr:first-child th:nth-child(4),.trend-table.standard-table tbody td:nth-child(4){left:570px;min-width:96px;box-shadow:8px 0 14px #1827360f}.trend-table.apparel-table tbody td:nth-child(1),.trend-table.apparel-table tbody td:nth-child(2),.trend-table.apparel-table tbody td:nth-child(3),.trend-table.apparel-table tbody td:nth-child(4),.trend-table.apparel-table tbody td:nth-child(5),.trend-table.standard-table tbody td:nth-child(1),.trend-table.standard-table tbody td:nth-child(2),.trend-table.standard-table tbody td:nth-child(3),.trend-table.standard-table tbody td:nth-child(4){background:var(--surface)}.trend-table.apparel-table thead tr:first-child th:nth-child(1),.trend-table.apparel-table thead tr:first-child th:nth-child(2),.trend-table.apparel-table thead tr:first-child th:nth-child(3),.trend-table.apparel-table thead tr:first-child th:nth-child(4),.trend-table.apparel-table thead tr:first-child th:nth-child(5),.trend-table.standard-table thead tr:first-child th:nth-child(1),.trend-table.standard-table thead tr:first-child th:nth-child(2),.trend-table.standard-table thead tr:first-child th:nth-child(3),.trend-table.standard-table thead tr:first-child th:nth-child(4){background:#f4f7f9;z-index:3}.trend-table.apparel-table tbody tr:hover td:nth-child(1),.trend-table.apparel-table tbody tr:hover td:nth-child(2),.trend-table.apparel-table tbody tr:hover td:nth-child(3),.trend-table.apparel-table tbody tr:hover td:nth-child(4),.trend-table.apparel-table tbody tr:hover td:nth-child(5),.trend-table.standard-table tbody tr:hover td:nth-child(1),.trend-table.standard-table tbody tr:hover td:nth-child(2),.trend-table.standard-table tbody tr:hover td:nth-child(3),.trend-table.standard-table tbody tr:hover td:nth-child(4){background:#f9fbfb}.trend-table tbody tr.trend-total-row td{background:#edf4f7;border-bottom:2px solid #b9c9d3;font-weight:700}.trend-table tbody tr.trend-total-row:hover td{background:#edf4f7}.decision-table th:first-child,.decision-table td:first-child,.decision-table th:nth-child(2),.decision-table td:nth-child(2),.decision-table th:nth-child(3),.decision-table td:nth-child(3){position:sticky;z-index:2}.decision-table td:first-child,.decision-table td:nth-child(2),.decision-table td:nth-child(3){background:var(--surface)}.decision-table th:first-child,.decision-table th:nth-child(2),.decision-table th:nth-child(3){background:#f4f7f9}.decision-table tbody tr:hover td:first-child,.decision-table tbody tr:hover td:nth-child(2),.decision-table tbody tr:hover td:nth-child(3){background:#f9fbfb}.decision-table tbody tr.decision-total-row td{background:#edf4f7;border-bottom:2px solid #b9c9d3;font-weight:700}.decision-table tbody tr.decision-total-row:hover td,.decision-table tbody tr.decision-total-row td:first-child,.decision-table tbody tr.decision-total-row td:nth-child(2),.decision-table tbody tr.decision-total-row td:nth-child(3){background:#edf4f7}.decision-table th:first-child,.decision-table td:first-child{left:0;min-width:96px}.decision-table th:nth-child(2),.decision-table td:nth-child(2){left:96px;min-width:142px}.decision-table th:nth-child(3),.decision-table td:nth-child(3){left:238px;min-width:142px;box-shadow:8px 0 14px #1827360f}.decision-table th:first-child,.decision-table th:nth-child(2),.decision-table th:nth-child(3){z-index:3}.decision-table.standard-table th:nth-child(2),.decision-table.standard-table td:nth-child(2){min-width:160px}.decision-table.standard-table th:nth-child(3),.decision-table.standard-table td:nth-child(3){left:256px;min-width:220px;box-shadow:none}.decision-table.standard-table th:nth-child(4),.decision-table.standard-table td:nth-child(4){position:sticky;left:476px;min-width:160px;z-index:2;box-shadow:8px 0 14px #1827360f}.decision-table.standard-table td:nth-child(4){background:var(--surface)}.decision-table.standard-table th:nth-child(4){background:#f4f7f9;z-index:3}.decision-table.standard-table tbody tr:hover td:nth-child(4){background:#f9fbfb}.decision-table.standard-table tbody tr.decision-total-row:hover td:nth-child(4),.decision-table.standard-table tbody tr.decision-total-row td:nth-child(4){background:#edf4f7}.product-name-cell{max-width:260px;overflow:hidden;text-overflow:ellipsis}.pill{display:inline-flex;align-items:center;justify-content:center;min-width:58px;min-height:26px;border-radius:999px;padding:0 8px;font-weight:700;font-size:12px}.pill.high{color:#9e241c;background:#fde7e4}.pill.sold_out{color:#fff;background:#9e241c}.pill.medium{color:#87500f;background:#fff1d7}.pill.low{color:#2a6174;background:#e5f4fa}.pill.safe{color:#1f6b38;background:#e6f4ea}.pill.stale{color:#6b5d1f;background:#f7f1d6}.pill.no_sales{color:#596673;background:#edf1f4}.qty-input{width:92px;margin:0;text-align:right;font-variant-numeric:tabular-nums}.sku-header{display:inline-flex;align-items:center;gap:8px}.sku-cell .swatch{display:inline-block;margin-right:8px;vertical-align:-2px}.swatch{width:14px;height:14px;border-radius:4px;border:1px solid rgba(23,33,43,.18);flex:0 0 auto}.share-panel{overflow:hidden}.share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 44px;align-items:start}.share-chart,.share-legend-table,.share-legend-row{min-width:0}.share-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.share-chart h3,.share-chart-head span{line-height:1.2}.share-chart h3{margin:0;font-size:15px}.share-chart-head span{color:var(--muted);font-size:12px;font-weight:700}.share-chart-wrap{display:grid;grid-template-columns:140px minmax(330px,1fr);gap:14px;align-items:start}.donut-panel{position:relative;width:140px;min-width:0}.donut{display:block;width:140px;height:140px}.donut-track,.donut-segment,.donut-segment-border{fill:none}.donut-track{stroke:#edf2f5;stroke-width:18}.donut-segment-border{stroke-width:18}.donut-segment{stroke-width:14}.donut-summary{position:absolute;top:35px;right:26px;bottom:35px;left:26px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;text-align:center;pointer-events:none}.donut-summary span,.donut-summary small{color:var(--muted);font-size:11px;line-height:1.2}.donut-summary strong{margin:3px 0 2px;font-size:22px;line-height:1;font-variant-numeric:tabular-nums}.donut-summary small{max-width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-legend-table{display:grid;gap:0;align-content:start;width:100%}.share-legend-head,.share-legend-row{display:grid;grid-template-columns:38px minmax(90px,132px) minmax(58px,max-content) minmax(54px,max-content) minmax(64px,1fr);gap:8px;align-items:center;min-width:0}.share-legend-head{min-height:26px;border-bottom:1px solid var(--line-soft);color:var(--muted);font-size:11px;font-weight:700}.share-legend-head span:nth-child(3),.share-legend-head span:nth-child(4){text-align:right}.share-legend-row{min-height:30px;border-bottom:1px solid var(--line-soft)}.share-legend-row:last-child{border-bottom:0}.share-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-value,.share-percent{min-width:0;text-align:right;font-variant-numeric:tabular-nums}.share-marker{justify-self:start;flex:0 0 auto}.share-swatch{width:16px;height:16px;border-radius:4px;border:1px solid rgba(23,33,43,.2);background:var(--share-color);box-shadow:inset 0 0 0 1px #ffffff59}.share-swatch.is-light{border-color:#97a6b2;box-shadow:inset 0 0 0 1px #17212b1f,0 0 0 1px #97a6b233}.share-token{min-width:30px;max-width:38px;min-height:22px;padding:0 6px;border:1px solid rgba(8,127,117,.18);border-radius:6px;background:color-mix(in srgb,var(--share-color) 12%,#ffffff);color:#25413f;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-bar{display:block;min-width:0;height:7px;border-radius:999px;background:#edf2f5;overflow:hidden}.share-bar-fill{display:block;height:100%;border-radius:inherit;background:var(--share-color)}.share-bar-fill.is-light{border:1px solid #aebbc5;background:var(--share-color)}.muted{color:var(--muted)}.negative,.danger-text{color:var(--danger)}.export-panel,.local-panel{margin-bottom:16px}.empty{text-align:center;color:#7b8b96;padding:28px 12px}@media (max-width: 980px){.topbar,.table-toolbar{align-items:flex-start;flex-direction:column}.topbar-actions{flex-wrap:wrap}.upload-band,.upload-band.three,.status-band,.control-grid,.form-grid,.form-grid.params,.share-grid,.dashboard-lower,.params-layout{grid-template-columns:1fr}.mode-band{align-items:flex-start;flex-direction:column}.switcher-row{align-items:stretch;flex-direction:column}.switcher-row .search-box{flex:1 1 auto;width:100%}.switcher-actions{justify-content:flex-start}.model-name-row{grid-template-columns:repeat(3,minmax(0,1fr))}.model-name-row.header{display:none}.model-name-actions{justify-content:flex-start}.model-detail-list,.model-merge-note{grid-column:1 / -1}.export-actions,.segmented{flex-wrap:wrap}.share-chart-wrap{grid-template-columns:140px minmax(180px,1fr)}.donut-panel,.donut{width:140px}.stat-grid,.stat-grid.wide{grid-template-columns:repeat(2,minmax(120px,1fr))}.core-grid,.risk-summary-grid,.param-grid.cycle,.param-grid.returns{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{width:100%;align-items:stretch;flex-direction:column}.search-box{width:100%}.decision-table th:nth-child(2),.decision-table td:nth-child(2),.decision-table th:nth-child(3),.decision-table td:nth-child(3),.decision-table.standard-table th:nth-child(4),.decision-table.standard-table td:nth-child(4){position:static;box-shadow:none}.decision-table th:first-child,.decision-table td:first-child{min-width:86px}}@media (max-width: 520px){main{width:min(1500px,calc(100% - 16px))}.topbar{padding:18px 16px}.topbar h1{font-size:21px}.topbar-actions{width:100%}.topbar-actions button{flex:1 1 120px;min-width:0}.usage-guide{grid-template-columns:1fr;gap:10px;padding:12px}.usage-guide p{grid-column:1;margin-top:0}.usage-step{flex:1 1 136px}.mode-band{padding:12px}.mode-toggle{width:100%}.mode-toggle button{flex:1 1 120px;min-width:0}.panel{padding:14px}.share-panel .panel-title.split{align-items:flex-start;flex-direction:column}.share-panel .segmented{flex-wrap:wrap;width:100%}.share-panel .segmented button{flex:1 1 128px;min-width:0}.share-grid{gap:18px}.panel-title.split{align-items:flex-start;flex-direction:column}.switcher-actions{width:100%}.switcher-actions button{flex:1 1 132px;min-width:0}.model-name-panel{padding:12px}.model-name-panel-head{flex-direction:column}.model-name-row{grid-template-columns:1fr;gap:8px}.model-name-row>span,.model-name-row>strong,.model-name-input-wrap{min-width:0}.model-auto:before,.model-effective:before,.model-product-summary:before,.model-sku-count:before{display:block;margin-bottom:3px;color:var(--muted);font-size:11px;font-weight:800}.model-auto:before{content:"自动型号名"}.model-effective:before{content:"生效型号名"}.model-product-summary:before{content:"产品名"}.model-sku-count:before{content:"SKU数"}.model-name-input-wrap>span{display:block;margin-bottom:3px;color:var(--muted);font-size:11px;font-weight:800}.model-sku-count{text-align:left}.model-name-status{justify-self:start}.model-name-actions{align-items:stretch;flex-direction:column}.model-name-actions button{width:100%}.model-detail-row{grid-template-columns:1fr;gap:4px}.model-merge-backdrop{align-items:flex-end;padding:10px}.model-merge-dialog{width:100%;max-height:min(82vh,640px);border-radius:14px 14px 10px 10px}.model-merge-head,.model-merge-actions{align-items:stretch}.model-merge-head{align-items:flex-start}.model-merge-facts{grid-template-columns:1fr}.model-merge-actions{flex-direction:column-reverse}.model-merge-actions button{width:100%}.core-grid,.risk-summary-grid,.param-grid.cycle,.param-grid.returns{grid-template-columns:1fr}.dashboard-lower,.params-layout{gap:12px}.risk-summary-panel,.abnormal-summary,.param-group{padding:12px}.coefficient-row{grid-template-columns:minmax(62px,.8fr) minmax(54px,.7fr) minmax(104px,1.4fr) 52px;gap:6px;padding:9px 8px}.coefficient-row.header{font-size:11px}.note-toggle{min-width:52px;padding:0 6px}.coefficient-note-row{grid-template-columns:1fr;gap:6px}.decision-filter-bar{align-items:stretch;flex-direction:column}.decision-filter-bar button{align-self:flex-start}.decision-filter-popover.mobile{max-height:min(70vh,560px);width:auto;border-radius:12px}.filter-range-row{grid-template-columns:1fr}.filter-popover-actions{align-items:stretch;flex-direction:column}.filter-popover-actions button{width:100%}.share-chart-wrap{grid-template-columns:1fr;justify-items:start;gap:12px}.donut-panel,.donut{width:124px}.donut{height:124px}.donut-summary{top:31px;right:22px;bottom:31px;left:22px}.share-legend-table{width:100%}.share-legend-head,.share-legend-row{grid-template-columns:32px minmax(0,1fr) minmax(52px,max-content) minmax(44px,max-content) minmax(48px,.6fr);gap:6px}.trend-table thead tr:first-child th:nth-child(1),.trend-table tbody td:nth-child(1),.trend-table thead tr:first-child th:nth-child(2),.trend-table tbody td:nth-child(2),.trend-table thead tr:first-child th:nth-child(3),.trend-table tbody td:nth-child(3),.trend-table thead tr:first-child th:nth-child(4),.trend-table tbody td:nth-child(4),.trend-table thead tr:first-child th:nth-child(5),.trend-table tbody td:nth-child(5),.decision-table th:first-child,.decision-table td:first-child{position:static;box-shadow:none}}
