:root{color-scheme:dark;--bg:#0d101b;--card:#171c2c;--line:#2b3146;--text:#eef0fa;--muted:#969fb9;--purple:#ad8bfa;--blue:#609bff;--red:#fb718e}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 30% -30%,#292047 0,transparent 55%),var(--bg);color:var(--text);font:13px/1.4 'Segoe UI',Arial,sans-serif;font-variant-numeric:tabular-nums}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--purple);outline-offset:3px}#app{max-width:1780px;margin:auto;padding:0 20px}.topbar{height:62px;display:flex;align-items:center;gap:22px}.brand{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:600;white-space:nowrap}.brand b{font-weight:400;color:var(--purple)}.logo{background:linear-gradient(135deg,#8760dc,#4a73cd);border:1px solid #bb95ff66;border-radius:10px;display:grid;place-items:center;width:32px;height:32px;font-size:12px}.status{margin-left:auto;display:flex;gap:7px;align-items:center;color:var(--muted);font-size:11px}.status i{width:6px;height:6px;border-radius:50%;background:#6ed8b6}.status span{border-left:1px solid var(--line);padding-left:8px}.status.stale{color:#ffc38a}.status.stale i{background:#ff986a}.toolbar{display:flex;gap:7px;align-items:center}select,.icon{background:#1b2032;border:1px solid var(--line);border-radius:7px;color:#dce0f2;padding:5px 9px;min-height:30px}.icon{display:grid;place-items:center;min-width:30px;font-size:16px}.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:12px}.kpi{border:1px solid var(--line);border-radius:10px;background:#151929;padding:10px 13px;min-width:0}.kpi>span{font-size:11px;color:var(--muted);display:block}.kpi strong{display:block;font-size:clamp(18px,1.7vw,29px);line-height:1.4;letter-spacing:-.6px;font-weight:650;white-space:nowrap}.kpi small{font-size:10px;color:var(--muted)}.kpi.highlight{background:linear-gradient(120deg,#342447,#20233f);border-color:#7954a477}.stores{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.store{color:inherit;text-align:left;border:1px solid var(--line);border-radius:10px;background:linear-gradient(115deg,color-mix(in srgb,var(--accent) 8%,#171c2c),#171c2c);padding:10px 13px;min-width:0}.store:hover,.store.selected{border-color:var(--accent)}.storehead{display:flex;justify-content:space-between;align-items:center;font-size:11px}.storehead b{color:var(--accent);font-size:12px}.storehead b i{width:6px;height:6px;background:var(--accent);display:inline-block;border-radius:50%;margin-right:7px}.storehead>span{color:var(--muted);font-size:10px}.storevalue{display:flex;align-items:center;justify-content:space-between;margin:3px 0 7px}.storevalue strong{font-size:clamp(19px,1.85vw,29px);font-weight:650;letter-spacing:-.5px;white-space:nowrap}.spark{width:30%;height:30px;color:var(--accent);opacity:.85}.store dl{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:0}.store dt{font-size:9px;color:var(--muted);white-space:nowrap}.store dd{margin:2px 0 0;font-weight:600;font-size:11px;white-space:nowrap}.storefoot{border-top:1px solid var(--line);margin-top:8px;padding-top:6px;font-size:10px;color:var(--muted);white-space:nowrap}.storefoot b{color:#d4daf0;font-weight:600;margin-left:4px}.panel{background:linear-gradient(150deg,#1a1f31,#151a28);border:1px solid var(--line);border-radius:10px;padding:12px 15px;min-width:0}.panelhead{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.panel h2{font-size:13px;font-weight:600;margin:0}.panel h2 span{font-size:10px;font-weight:400;color:var(--muted);margin-left:6px}.caption{font-size:10px;color:var(--muted)}.chartgrid{display:grid;grid-template-columns:1.2fr 1fr;gap:12px;margin-bottom:12px}.legend{display:flex;gap:16px;color:var(--muted);font-size:10px;margin:3px 0 5px}.legend i{display:inline-block;width:6px;height:6px;border-radius:2px;margin-right:5px}.linechart{display:block;width:100%;height:184px;overflow:visible}.linechart text{fill:#919dbb;font-size:10px}.gridline{stroke:#2a3145;stroke-dasharray:3 4;stroke-width:1}.profitrows{display:grid;gap:6px}.profitrow{display:grid;grid-template-columns:126px 1fr 100px;align-items:center;gap:9px;min-height:19px;font-size:11px}.profitrow>span{color:#afb7cf}.profitrow>b{text-align:right;font-size:11px;font-weight:600;white-space:nowrap}.negative{color:var(--red)!important}.signedbar{height:9px;position:relative}.signedbar i:not(.axis){position:absolute;height:7px;top:1px;border-radius:2px}.signedbar .axis{position:absolute;left:50%;top:-3px;bottom:-3px;border-left:1px solid #51586e}.scenario{display:flex;justify-content:space-between;gap:5px;font-size:9px;color:var(--muted);border-top:1px solid var(--line);padding-top:7px;margin-top:8px}.scenario b{color:#c5cce3;font-weight:500;white-space:nowrap}.scenario em{font-style:normal;color:var(--muted);padding:0 4px}.textbutton{background:none;border:0;color:var(--purple);padding:5px 0 0;font-size:10px;float:right}.bottomgrid{display:grid;grid-template-columns:1.2fr 1fr;gap:12px}table{border-collapse:collapse;width:100%;font-size:11px}th,td{padding:7px 4px;border-bottom:1px solid #2a3041;text-align:right;white-space:nowrap}th:first-child,td:first-child{text-align:left}thead th{color:var(--muted);font-size:9px;font-weight:500}tbody th{font-weight:500}tbody td{font-weight:500}.totalrow td,.totalrow th{font-weight:700;border-bottom:0}.delta{display:inline-block;margin-left:3px;color:var(--muted);font-size:9px}.delta.up{color:#72d2b7}.delta.down{color:#fb8ca2}.rates{display:flex;gap:12px;font-size:9px;color:var(--muted);border-top:1px solid var(--line);padding-top:7px;margin-top:4px;flex-wrap:wrap}.rates b{font-weight:500;color:#c6cee4}.panelhead select{font-size:10px;min-height:25px;max-width:180px;padding:3px 7px}.productrows{display:grid;gap:8px}.productrow{display:grid;grid-template-columns:13px 1fr 85px;gap:8px;align-items:center}.rank{font-size:10px;color:#727e9c}.productname{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.productrow>div{min-width:0}.productrow b{font-size:11px;font-weight:500;text-align:right;white-space:nowrap}.productbar{height:3px;margin-top:4px;background:#252c41;border-radius:3px}.productbar i{display:block;height:3px;background:linear-gradient(90deg,#6e52b7,#779dff);border-radius:3px}footer{display:flex;justify-content:space-between;gap:20px;padding:9px 2px;color:#8590ab;font-size:9px}.empty{color:var(--muted);padding:25px 10px;text-align:center}.loading{padding:25vh 15px}.tablewrap{overflow-x:auto}dialog{background:#1a2031;color:var(--text);border:1px solid #4a4266;border-radius:13px;padding:24px;width:min(780px,94vw);max-height:85vh;box-shadow:0 20px 100px #0009}dialog::backdrop{background:#060916bd;backdrop-filter:blur(5px)}dialog h2{font-size:17px}dialog h3{font-size:13px;margin-top:22px}dialog p{font-size:12px;color:#b1bbd3;line-height:1.6}.close{float:right;background:#2b3145;color:#d7deef;border:0;border-radius:6px;width:28px;height:28px;font-size:20px}.login{min-height:100vh;display:grid;place-items:center}.loginbox{width:min(370px,92vw);background:var(--card);padding:28px;border:1px solid var(--line);border-radius:15px;text-align:center}.loginbox h1{font-size:22px}.loginbox p{color:var(--muted)}.mark{border-radius:10px;width:42px;height:42px;display:grid;place-items:center;background:#6650b1;margin:auto}.loginbox label{display:block;text-align:left}.loginbox input{width:100%;margin-top:5px;padding:12px;background:#101626;border:1px solid var(--line);border-radius:8px;color:white}.loginbox button{width:100%;padding:11px;margin-top:15px;background:#7955ce;border:0;border-radius:8px;color:white}.loginbox small{color:var(--red);display:block;margin-top:10px}
@media(min-width:1700px){#app{padding:0 28px}.topbar{height:74px}.kpi{padding:15px}.stores{margin-bottom:16px}.store{padding:16px}.store dd{font-size:13px}.store dt{font-size:11px}.panel{padding:16px 18px}.panel h2{font-size:15px}.linechart{height:215px}.profitrow{min-height:23px;font-size:13px}.profitrow>b{font-size:13px}.bottomgrid table{font-size:13px}.bottomgrid th,.bottomgrid td{padding:9px 5px}.productrows{gap:13px}.productname,.productrow b{font-size:13px}.kpis,.stores{gap:14px}}
@media(max-width:1100px){#app{padding:0 12px}.status{font-size:10px}.status>span{display:none}.store dl{grid-template-columns:1fr 1fr}.storevalue strong{font-size:21px}.storefoot{font-size:9px}.profitrow{grid-template-columns:105px 1fr 90px;gap:5px}.comparison .delta{display:block;margin:0}.rates{gap:7px}.kpi small{font-size:9px}.chartgrid,.bottomgrid{grid-template-columns:1.15fr 1fr}}
@media(max-width:760px){.brand{font-size:14px}.topbar{height:auto;min-height:66px;flex-wrap:wrap;gap:8px;padding:10px 0}.status{order:3;width:100%;margin-left:0}.status>span{display:inline}.toolbar{margin-left:auto}.toolbar select{max-width:123px}.logout{display:none}.kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.kpi:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center}.kpi:last-child strong{grid-column:2;grid-row:1/3;text-align:right}.kpi:last-child small{grid-column:1}.kpi strong{font-size:21px}.stores{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.store{padding:9px}.storevalue strong{font-size:19px}.spark{display:none}.storefoot{white-space:normal;font-size:9px}.storefoot b{margin-left:0;display:inline}.chartgrid,.bottomgrid{grid-template-columns:1fr;gap:10px;margin-bottom:10px}.panel{padding:12px}.linechart{height:190px}.profitrow{grid-template-columns:120px 1fr 90px}.profitrow>span{font-size:11px}.scenario{font-size:9px;flex-wrap:wrap}.comparison .delta{display:block}.rates{justify-content:space-between}.productrow{grid-template-columns:13px 1fr 85px}.kpi small{font-size:9px}footer{flex-direction:column;gap:3px;font-size:9px}.toolbar .icon{padding:3px;min-width:28px}.legend{gap:12px}.panelhead h2 span{font-size:9px}.store dd{font-size:10px}.store dt{font-size:9px}}
.storeforecast{display:flex;justify-content:space-between;gap:5px;font-size:10px;color:var(--muted);margin-top:4px}.storeforecast b{color:var(--accent);font-weight:600;white-space:nowrap}
.producttools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.periods{display:flex;gap:3px}.periods button{background:transparent;border:1px solid var(--line);border-radius:5px;padding:3px 10px;color:var(--muted);font-size:10px}.periods button[aria-pressed=true]{background:#5f438866;border-color:#9370c3;color:#eadfff}.productrows{max-height:153px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#62527b transparent;padding-right:6px}.profitrow>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(min-width:1700px){.productrows{max-height:202px}}
@media(min-width:1101px) and (max-height:850px){.topbar{height:45px}.productrows{max-height:132px}}
@media(min-width:1101px) and (max-height:850px){.topbar{height:49px}.kpi{padding:8px 11px}.stores,.kpis{margin-bottom:8px}.store{padding:8px 11px}.storevalue{margin:1px 0 4px}.panel{padding:10px 12px}.linechart{height:150px}.chartgrid{margin-bottom:8px}.profitrows{gap:4px}.profitrow{min-height:17px}.panelhead{margin-bottom:5px}.comparison th,.comparison td{padding:5px 4px}.productrows{gap:6px}footer{padding:6px 0}}
@media(max-width:760px){.linechart{height:auto;aspect-ratio:360/155}.storeforecast{flex-wrap:wrap;font-size:9px}}
@media(max-width:380px){.brand{font-size:13px;gap:6px}.logo{width:27px;height:27px}.toolbar{gap:4px}.toolbar select{max-width:108px;font-size:11px}.storevalue strong{font-size:17px}.kpi strong{font-size:20px}.comparison table{font-size:10px}.comparison th,.comparison td{padding:6px 2px}.panelhead h2{font-size:12px}.storefoot{font-size:8px}}
@media(min-width:1101px) and (max-height:850px){.topbar{height:45px}.panel{padding-top:8px;padding-bottom:8px}.profitrows{gap:2px}.profitrow{min-height:16px}.scenario{margin-top:6px;padding-top:5px}.productrows{max-height:132px}}
.scopebanner{font-size:11px;letter-spacing:.2px;color:#eee5ff;background:#4a356f;border:1px solid #8062ad;border-radius:7px;padding:5px 9px;white-space:nowrap}.scopefull{grid-column:1/-1;display:none;background:#302543;border:1px solid #5d477f;border-radius:7px;color:#e6dcff;font-size:11px;font-weight:600;padding:5px 9px}.scopepill{font-size:9px;color:#d6c4ff;background:#302543;border-radius:5px;padding:3px 6px;white-space:nowrap}@media(max-width:1100px){.scopebanner{font-size:10px}.topbar{gap:10px}}@media(max-width:760px){.scopebanner{order:2;width:100%;text-align:center}.scopefull{display:block}.topbar{gap:6px}.status{order:4}.toolbar{order:3}.toolbar select{max-width:105px}.scopepill{display:none}}@media(min-width:1101px) and (max-height:850px){.scopebanner{padding:3px 7px}.scopefull{display:none}}
.tvrotate{margin-left:auto;color:#d8c7ff;font-size:11px;border:1px solid #5b477e;border-radius:7px;padding:4px 8px}
.bottomgrid{grid-template-columns:1.2fr 1fr .9fr .9fr}.newproducts .productrows{max-height:151px}.newproducts .productrow{grid-template-columns:13px 1fr 96px;gap:6px}.newproducts .productrow b{font-size:10px}.newcaption{margin:-2px 0 7px}@media(max-width:1300px){.bottomgrid{grid-template-columns:1.15fr 1fr}.newproducts .productrows{max-height:120px}}@media(max-width:760px){.bottomgrid{grid-template-columns:1fr}.newproducts .productrows{max-height:130px}}
