:root{--ink:#17202a;--muted:#667085;--line:#d8e0e8;--bg:#f4f6f8;--panel:#fff;--teal:#0f766e;--blue:#2563eb;--amber:#d97706;--red:#b42318;--green:#15803d}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr);background:var(--bg);color:var(--ink);font-family:"Microsoft YaHei","Segoe UI",Arial,sans-serif}.sidebar{min-height:100vh;padding:22px 14px;background:#17212f;color:#fff}.brand{display:grid;gap:5px;padding:0 8px 24px}.brand strong{font-size:19px}.brand span{font-size:12px;color:#aab7c8}nav{display:grid;gap:6px}nav button{border:0;border-radius:6px;padding:11px 12px;background:transparent;color:#dbe4ef;text-align:left;font:inherit;font-size:14px;cursor:pointer}nav button:hover,nav button.active{background:#29384c;color:#fff}.shell{min-width:0;padding:22px;display:grid;gap:16px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.topbar h1,.panel h2,.dialog h2,p{margin:0}.topbar h1{font-size:27px}.eyebrow{margin:0 0 5px;color:var(--teal);font-size:11px;font-weight:800}.top-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.source-pill{padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:11px}.primary-button,.secondary-button,.small-button,.text-button,.button-row button{border:1px solid var(--teal);border-radius:6px;padding:8px 12px;background:var(--teal);color:#fff;font:inherit;font-size:13px;cursor:pointer}.secondary-button,.small-button,.button-row button{border-color:var(--line);background:#fff;color:var(--ink)}.text-button{border:0;padding:0;background:transparent;color:var(--blue)}button:disabled{opacity:.55;cursor:wait}.info-icon{width:17px;height:17px;display:inline-grid;place-items:center;border:1px solid currentColor;border-radius:50%;font-size:11px;font-weight:800}.filters{display:grid;grid-template-columns:repeat(8,minmax(105px,1fr)) auto;gap:9px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.filters label,.inline-filter label,.detail label{display:grid;gap:5px;color:var(--muted);font-size:11px}.filters input,.filters select,.inline-filter select,.detail textarea,.ai-dialog textarea{width:100%;min-width:0;height:36px;border:1px solid var(--line);border-radius:6px;padding:6px 8px;background:#fff;color:var(--ink);font:inherit}.view{display:grid;gap:16px;min-width:0}.view[hidden],[data-tab-panel][hidden]{display:none}.page-intro{min-height:76px;display:flex;align-items:center;padding:16px 18px;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:7px;background:#fff}.page-intro div{display:grid;gap:5px}.page-intro strong{font-size:19px}.page-intro span{color:var(--muted);font-size:13px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.kpi{min-width:0;padding:14px;border:1px solid var(--line);border-radius:7px;background:#fff;display:grid;gap:7px}.kpi>span{color:var(--muted);font-size:12px}.kpi>strong{font-size:21px}.kpi>div{min-height:18px;display:flex;align-items:center;gap:8px}.kpi small{color:var(--muted);font-size:11px}.delta{font-size:11px;font-weight:700}.delta.up{color:var(--green)}.delta.down{color:var(--red)}.grid{display:grid;gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two-wide{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.panel{min-width:0;padding:15px;border:1px solid var(--line);border-radius:7px;background:#fff}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-title h2,.panel h2{font-size:16px}.panel-title>span{color:var(--muted);font-size:11px}.chart{min-height:280px;max-width:100%;overflow-x:auto}.chart svg{display:block;width:100%;min-width:560px;height:auto}.chart text{fill:var(--muted);font-size:10px}.legend{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:7px;color:var(--muted);font-size:11px}.legend span{display:inline-flex;align-items:center;gap:5px}.legend i{width:9px;height:9px;border-radius:2px}.tabs,.task-filters{display:flex;gap:5px;padding:4px;border:1px solid var(--line);border-radius:7px;background:#fff;overflow-x:auto}.tabs button,.task-filters button{border:0;border-radius:5px;padding:8px 12px;background:transparent;color:var(--muted);white-space:nowrap;font:inherit;font-size:13px;cursor:pointer}.tabs button.active,.task-filters button.active{background:#e8f3f2;color:var(--teal);font-weight:700}.table{display:grid;gap:6px;max-width:100%;overflow-x:auto}.table-row{min-width:720px;display:grid;gap:9px;align-items:center;padding:9px 10px;border:1px solid #e9eef3;border-radius:5px;background:#fbfcfd;font-size:12px;text-align:left}.table-row.head{position:sticky;top:0;z-index:2;border:0;background:#fff;color:var(--muted);font-weight:700}.table-row.head button{border:0;padding:0;background:transparent;color:inherit;text-align:left;font:inherit;font-weight:700;cursor:pointer}.row-button{width:100%;color:inherit;font:inherit;cursor:pointer}.row-button:hover{border-color:#9ec5c1;background:#f5fbfa}.cols-4{grid-template-columns:minmax(180px,1.3fr) repeat(3,minmax(110px,.8fr))}.cols-5{grid-template-columns:minmax(170px,1.3fr) repeat(4,minmax(100px,.75fr))}.cols-6{grid-template-columns:minmax(170px,1.3fr) repeat(5,minmax(105px,.8fr))}.cols-7{grid-template-columns:minmax(180px,1.4fr) repeat(6,minmax(100px,.75fr))}.list{display:grid;gap:8px}.notice{display:grid;gap:4px;padding:10px 11px;border-left:3px solid var(--amber);background:#fffaf2;font-size:12px}.notice.high{border-color:var(--red);background:#fff5f4}.notice span{color:var(--muted)}.bar-list{display:grid;gap:10px}.bar-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(140px,2fr) 90px;gap:10px;align-items:center;font-size:12px}.bar-track{height:11px;border-radius:999px;background:#edf1f5;overflow:hidden}.bar-track i{display:block;height:100%;border-radius:inherit}.tier{width:26px;height:26px;display:inline-grid;place-items:center;border-radius:50%;color:#fff}.tier-A{background:var(--green)}.tier-B{background:var(--blue)}.tier-C{background:var(--amber)}.tier-D{background:var(--red)}.unavailable{border-style:dashed;background:#f9fafb}.unavailable p{margin-top:8px;color:var(--muted);line-height:1.7}.inline-filter{display:flex;align-items:end;gap:9px}.inline-filter label{min-width:260px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.detail-grid div{padding:10px;background:#f7f9fb;color:var(--muted);font-size:11px}.detail-grid strong{display:block;margin-top:5px;color:var(--ink);font-size:16px}.waterfall{min-height:230px;display:flex;align-items:end;justify-content:center;gap:28px;padding:20px;border-bottom:1px solid var(--line)}.waterfall>div{display:grid;justify-items:center;gap:6px;color:var(--muted);font-size:11px}.waterfall i{width:54px;display:block;background:var(--teal)}.waterfall i.bad{background:var(--red)}.waterfall strong{color:var(--ink);font-size:12px}.task{width:100%;display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:5px;background:#fff;text-align:left;cursor:pointer}.task.selected{border-color:var(--teal);background:#f3faf9}.task span{color:var(--muted);font-size:11px}.detail{display:grid;gap:10px}.detail textarea{height:72px;resize:vertical}.button-row{display:flex;gap:8px;flex-wrap:wrap}.empty,.loading{padding:15px;border:1px dashed var(--line);border-radius:6px;background:#fafbfc;color:var(--muted);font-size:12px}.dialog{width:min(920px,calc(100vw - 36px));max-height:calc(100vh - 44px);padding:0;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff;box-shadow:0 22px 60px rgba(15,23,42,.24)}.dialog::backdrop{background:rgba(15,23,42,.45)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 19px;border-bottom:1px solid var(--line)}.icon-button{width:34px;height:34px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--muted);font-size:21px;cursor:pointer}.dialog>.table{max-height:65vh;padding:14px 18px 18px}.ai-dialog{width:min(660px,calc(100vw - 36px));padding-bottom:18px}.dialog-note,.ai-dialog textarea,.ai-dialog>.primary-button,.ai-answer{margin:14px 18px 0}.ai-dialog textarea{width:calc(100% - 36px);height:92px;resize:vertical}.ai-answer{padding:13px;border:1px solid var(--line);border-radius:6px;background:#f8fafb;line-height:1.7;font-size:13px}.ai-answer p{margin-top:8px}.ai-answer small{color:var(--muted)}@media(max-width:1180px){.filters{grid-template-columns:repeat(4,minmax(130px,1fr))}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){body{grid-template-columns:1fr}.sidebar{min-height:auto}.brand{padding-bottom:12px}nav{grid-template-columns:repeat(5,minmax(110px,1fr));overflow-x:auto}.shell{padding:14px}.topbar{align-items:flex-start;flex-direction:column}.top-actions{justify-content:flex-start}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two,.grid.two-wide{grid-template-columns:1fr}.detail-grid{grid-template-columns:1fr}.chart{min-height:220px}}@media(max-width:520px){.filters,.kpis{grid-template-columns:1fr}.top-actions{display:grid;width:100%;grid-template-columns:1fr 1fr}.source-pill{grid-column:1/-1}.page-intro{min-height:68px}.inline-filter{align-items:stretch;flex-direction:column}.inline-filter label{min-width:0}.bar-row{grid-template-columns:90px 1fr 72px}.panel{padding:12px}}
.filters{grid-template-columns:minmax(118px,.9fr) minmax(130px,1fr) minmax(164px,1.22fr) minmax(164px,1.22fr) minmax(86px,.62fr) minmax(136px,1fr) minmax(128px,.95fr) minmax(150px,1fr) auto}.page-intro{justify-content:space-between;gap:14px}.ai-analysis-dialog{width:min(760px,calc(100vw - 36px))}.ai-analysis-body{display:grid;gap:12px;padding:16px 18px 18px}.ai-analysis-body .notice{border-left-color:var(--teal);background:#f4fbfa}.sort-button{display:inline-flex;align-items:center;gap:4px}
@media(max-width:1180px){.filters{grid-template-columns:repeat(4,minmax(130px,1fr))}}@media(max-width:820px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.filters{grid-template-columns:1fr}.page-intro{align-items:flex-start;flex-direction:column}}
[hidden]{display:none!important}.topbar{flex-wrap:wrap}.filters{grid-template-columns:minmax(90px,.76fr) minmax(104px,.86fr) minmax(132px,1fr) minmax(132px,1fr) minmax(68px,.5fr) minmax(106px,.78fr) minmax(92px,.68fr) minmax(100px,.72fr) minmax(100px,.72fr) 64px}.filters .primary-button{min-width:62px;padding-inline:8px;white-space:nowrap}.warn-row{border-color:#f0a9a1!important;background:#fff6f5!important}.warn-row>div:first-child{color:var(--red);font-weight:800}.warn-value{display:inline-block;padding:2px 5px;border:1px solid #f0a9a1;border-radius:3px;background:#fff6f5;color:var(--red);font-weight:800}.cols-7{grid-template-columns:minmax(170px,1.35fr) repeat(6,minmax(96px,.72fr))}
.cols-8{grid-template-columns:minmax(160px,1.3fr) repeat(7,minmax(92px,.7fr))}.cols-9{min-width:920px;grid-template-columns:minmax(160px,1.3fr) repeat(8,minmax(94px,.72fr))}.cols-10{min-width:980px;grid-template-columns:minmax(145px,1.2fr) minmax(108px,.76fr) repeat(8,minmax(84px,.64fr))}.cols-11{min-width:1080px;grid-template-columns:minmax(145px,1.2fr) minmax(108px,.76fr) repeat(9,minmax(84px,.64fr))}.total-row{background:#f4f8fb;font-weight:800}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}@media(max-width:900px){.two-col{grid-template-columns:1fr}}#storeRevenueRanking .table-row{grid-template-columns:44px minmax(200px,1.8fr) minmax(104px,.95fr) minmax(108px,1fr) minmax(92px,.85fr) minmax(108px,1fr)}
.kpis.five{grid-template-columns:repeat(5,minmax(0,1fr))}.company-balance-negative{color:var(--red)}
@media(max-width:1180px){.filters{grid-template-columns:repeat(4,minmax(124px,1fr))}}@media(max-width:820px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.filters{grid-template-columns:1fr}}
@media(max-width:1180px){.kpis.five{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.kpis.five{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.kpis.five{grid-template-columns:1fr}}
.login-screen{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#17212f 0%,#24364d 48%,#0f766e 100%)}.login-screen[hidden]{display:none!important}.login-panel{width:min(420px,100%);display:grid;gap:14px;padding:28px;border:1px solid rgba(255,255,255,.28);border-radius:8px;background:#fff;box-shadow:0 26px 80px rgba(0,0,0,.28)}.login-brand{display:grid;gap:5px;margin-bottom:6px}.login-brand span{color:var(--teal);font-size:12px;font-weight:800}.login-brand strong{font-size:24px}.login-panel label{display:grid;gap:6px;color:var(--muted);font-size:12px}.login-panel select,.login-panel input{height:40px;border:1px solid var(--line);border-radius:6px;padding:7px 10px;font:inherit}.login-remember{grid-template-columns:auto 1fr!important;align-items:center;color:var(--ink)!important}.login-remember input{width:15px;height:15px}.login-error{min-height:18px;color:var(--red);font-size:12px}.login-hint{color:var(--muted);font-size:12px}.login-active{overflow:hidden}.shell{align-content:start}.warn-legend{min-width:360px;display:flex;align-items:center;gap:8px;margin-bottom:4px;padding:8px 10px;border:1px solid #f0cbc7;border-radius:5px;background:#fffafa;color:#8a2d25;font-size:12px}.warn-legend span{width:18px;height:12px;border:1px solid #f0a9a1;background:#fff6f5}.filters{align-self:start;grid-template-columns:minmax(98px,.78fr) minmax(132px,1fr) minmax(132px,1fr) minmax(68px,.48fr) minmax(106px,.78fr) minmax(92px,.68fr) minmax(100px,.72fr) minmax(100px,.72fr) 64px;grid-auto-rows:min-content}.filters label{min-height:53px}.filters input,.filters select{height:34px}.inline-filter{min-height:42px}
@media(max-width:1180px){.filters{grid-template-columns:repeat(3,minmax(124px,1fr))}}@media(max-width:820px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.warn-legend{min-width:0}}@media(max-width:520px){.filters{grid-template-columns:1fr}.login-panel{padding:22px}}
.org-department{border-color:#b6d7d3;background:#f2fbfa;font-weight:800}.org-store{background:#fff}.org-store>div:first-child{padding-left:24px;color:var(--ink);font-weight:600}.expand-mark{width:18px;height:18px;display:inline-grid;place-items:center;margin-right:8px;border:1px solid var(--teal);border-radius:50%;color:var(--teal);font-weight:900;line-height:1}
.filter-summary{margin-top:-8px;color:var(--muted);font-size:12px}
.tier-standard{min-width:720px;display:grid;gap:4px;padding:10px 12px;border-left:3px solid var(--teal);background:#f3faf9;font-size:12px}.tier-standard span{color:var(--muted);line-height:1.6}.diagnosis-summary{display:grid;gap:7px;padding:16px 18px;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:7px;background:#fff}.diagnosis-summary>div{display:flex;align-items:center;gap:9px}.diagnosis-summary>div span{font-weight:800}.diagnosis-summary>strong{font-size:18px}.diagnosis-summary>small{color:var(--muted)}.tier-summary-D{border-left-color:var(--red)}.tier-summary-C{border-left-color:var(--amber)}.diagnosis-list{display:grid;gap:8px}.diagnosis-item{display:grid;gap:5px;padding:11px 12px;border-left:3px solid var(--amber);background:#fffaf2;font-size:12px}.diagnosis-item span{color:var(--muted);line-height:1.6}.diagnosis-item.action{grid-template-columns:24px 1fr;border-left-color:var(--teal);background:#f3faf9}.diagnosis-item.action>b{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:var(--teal);color:#fff}.diagnosis-item.action>div{display:grid;gap:5px}
.quality-panel{display:grid;gap:12px;padding:14px 18px 0}.quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quality-grid>div{min-width:0;padding:12px;border:1px solid var(--line);border-radius:7px;background:#f8fafb;display:grid;gap:5px}.quality-grid span,.quality-grid small,.quality-item small{color:var(--muted);font-size:11px}.quality-grid strong{font-size:17px}.quality-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quality-item{min-width:0;display:grid;grid-template-columns:1fr auto;gap:5px 10px;padding:10px 11px;border-left:3px solid var(--line);background:#fbfcfd;font-size:12px}.quality-item span{font-weight:800}.quality-item small{grid-column:1/-1}.quality-item.ok{border-left-color:var(--green);background:#f3fbf6}.quality-item.warn{border-left-color:var(--amber);background:#fffaf2}.quality-item.bad{border-left-color:var(--red);background:#fff5f4}
@media(max-width:820px){.quality-grid,.quality-list{grid-template-columns:1fr}}
.table.sticky-table{max-height:68vh;overflow:auto;align-content:start;scrollbar-gutter:stable}
.table.sticky-table>.table-row.head{top:0;z-index:4;background:#fff;box-shadow:0 1px 0 var(--line)}
