
*{box-sizing:border-box}body{margin:0;background:#f3f6f5;color:#172b36;font:14px 'Segoe UI',system-ui}aside{position:fixed;width:245px;inset:0 auto 0 0;background:#132c33;color:#d7e5e6;display:flex;flex-direction:column;padding:30px 20px}.logo{display:flex;gap:12px;align-items:center;font-weight:750;font-size:25px}.logo>span{background:#b7e8cc;color:#14372d;width:43px;height:43px;display:grid;place-items:center;border-radius:13px}.logo small{font-size:9px;letter-spacing:1.5px;color:#afc3c7}.workspace{font-size:10px;letter-spacing:1.5px;border-top:1px solid #ffffff18;margin:32px 4px 24px;padding-top:23px}.workspace small{color:#88a4aa;letter-spacing:0}nav{display:grid;gap:6px}nav button{background:transparent;color:#afc3c7;text-align:left;padding:13px;border:0;font-size:13px}nav button.active,nav button:hover{background:#244c4e;color:#ccf2db}nav button span{display:inline-block;width:27px}aside footer{margin-top:auto;font-size:11px;border-top:1px solid #ffffff18;padding-top:24px}small{display:block;color:#72848c;font-weight:400;font-size:11px;margin-top:5px}.shell{margin-left:245px}header{padding:30px 40px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #dfe7e6}.eyebrow{font-size:9px;color:#72848c;letter-spacing:2px}h1{font-size:28px;font-weight:750;margin:7px 0 0;letter-spacing:-1px}.pill{font-size:10px;color:#137366;background:#e9f4ee;border-radius:30px;padding:9px 13px}button,.button{font-family:inherit;font-size:12px;cursor:pointer;border:1px solid #dfe7e6;background:#fff;color:#172b36;padding:10px 15px;border-radius:6px;text-decoration:none;display:inline-block}button:hover,.button:hover{border-color:#137366}button.primary,.button.primary{background:#137366;color:white;border-color:#137366}button:disabled{opacity:.5;cursor:wait}main{padding:30px 40px;max-width:1700px;margin:auto}.intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.intro p{color:#72848c;line-height:1.7;margin:0}.intro strong{color:#172b36;display:block;font-size:16px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.metric,.card{background:#fff;border:1px solid #dfe7e6;border-radius:12px;box-shadow:0 2px 3px #132b3303}.metric{padding:21px}.metric label{display:block;color:#72848c;font-size:11px}.metric b{font-size:28px;font-weight:750;margin:12px 0 6px;display:block;letter-spacing:-1px}.metric small{font-size:10px}.grid{display:grid;grid-template-columns:1.7fr 1fr;gap:22px;margin-bottom:24px}.card{padding:24px;margin-bottom:22px}h2{font-size:17px;margin:0 0 7px}h3{font-size:14px}p.note{font-size:11px;color:#72848c;line-height:1.7}.bars{height:220px;display:flex;align-items:end;gap:9px;padding-top:30px;border-bottom:1px solid #dfe7e6;margin-bottom:25px}.bar{flex:1;background:#258779;border-radius:4px 4px 0 0;position:relative;min-width:4px}.bar:nth-child(odd){background:#79b8a4}.bar small{position:absolute;bottom:-26px;white-space:nowrap;font-size:8px;transform:rotate(-35deg);left:0}.category-row{display:grid;grid-template-columns:1fr 95px;gap:10px;margin:15px 0;font-size:11px}.category-row span{background:#e9f2ec;height:5px;display:block;margin-top:6px}.category-row i{display:block;background:#137366;height:5px}.category-row b{text-align:right;font-weight:500}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;font-weight:500;color:#72848c;font-size:10px;text-transform:uppercase;letter-spacing:.6px;padding:15px 12px;border-bottom:1px solid #dfe7e6;background:#f8faf9}td{padding:14px 12px;border-bottom:1px solid #edf1ef;vertical-align:middle}tr:hover td{background:#fafcfb}.badge{font-size:9px;background:#fff2df;color:#9f651b;padding:5px 8px;border-radius:5px}.toolbar{display:flex;gap:10px;align-items:center;margin:18px 0;flex-wrap:wrap}input,select{font-family:inherit;font-size:12px;padding:11px;border:1px solid #dfe7e6;border-radius:6px;background:#fff;color:#172b36}input[type=search]{width:330px}.upload{padding:45px;text-align:center;background:#f5faf7;border:1px dashed #83b4a4;border-radius:9px;margin:22px 0}.upload strong{display:block;font-size:20px;margin-bottom:12px}.upload p{color:#72848c;font-size:12px}.upload input{max-width:100%;margin:15px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:25px 0}.steps div{background:#f5f8f6;border-radius:8px;padding:16px}.steps b{color:#137366}.banner{background:#173b39;border-radius:12px;padding:30px;color:#e4f5ed;margin-bottom:24px}.banner b{font-size:36px;display:block;margin-top:7px}.banner small{color:#accfc4}.chat{background:#f0f7f3;padding:20px;border-radius:8px;white-space:pre-wrap;line-height:1.8}.setup{max-width:700px;margin:40px auto;text-align:center;padding:50px}.setup p{color:#72848c;line-height:1.8}.setup ul{text-align:left;line-height:2}.busy{color:#137366;font-size:12px;padding:14px;background:#eaf5ef;border-radius:7px}#toast{position:fixed;bottom:22px;right:25px;max-width:550px;padding:15px 22px;background:#173b39;color:white;border-radius:9px;display:none;z-index:100}dialog{border:0;border-radius:14px;padding:28px;width:min(1100px,95vw);max-height:88vh;box-shadow:0 20px 100px #0004}dialog::backdrop{background:#102d3677}.error{background:#fff0e8;color:#943e23;padding:15px;border-radius:7px}.empty{padding:40px;text-align:center;color:#72848c}@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}header,main{padding:22px}}@media(max-width:700px){aside{position:static;width:auto;padding:18px}aside .workspace,aside footer{display:none}nav{display:flex;overflow:auto;margin-top:16px}nav button{white-space:nowrap}.shell{margin:0}header .pill{display:none}.metrics{gap:10px}.metric{padding:15px}.metric b{font-size:22px}.steps{grid-template-columns:1fr 1fr}.intro{display:block}.toolbar input{width:100%}}

.period-bar{margin:24px 40px 0;background:white;border:1px solid #dfe7e6;border-radius:10px;padding:16px 20px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.period-bar[hidden]{display:none}.period-bar>div{margin-right:auto}.period-bar strong{font-size:12px}.period-bar label{font-size:11px;color:#72848c;display:flex;gap:8px;align-items:center}.period-bar input{min-width:145px}@media(max-width:1100px){.period-bar{margin:20px 22px 0}}@media(max-width:700px){.period-bar>div{width:100%}.period-bar{gap:10px}}

.logo>span{flex-shrink:0;overflow:hidden}.logo img{width:100%;height:100%;object-fit:contain;background:white;padding:3px}#brandName{display:block;font-size:18px;max-width:147px;overflow-wrap:anywhere;line-height:1.2}.logo-preview{width:180px;height:100px;border:1px solid #dfe7e6;border-radius:8px;display:grid;place-items:center;padding:10px;background:#f8faf9}.logo-preview img{max-width:100%;max-height:80px;object-fit:contain}.logo-preview span{font-size:11px;color:#72848c}

.product-link{border:0;background:transparent;color:#137366;font-weight:650;text-align:left;padding:4px 0;font-size:12px}.product-link:hover{text-decoration:underline}.analytics-chart svg{width:100%;display:block}.analytics-chart text{font:11px 'Segoe UI',sans-serif;fill:#72848c}.chart-legend{display:flex;flex-wrap:wrap;gap:15px;font-size:11px;margin:15px 0}.supplier-rank{display:grid;grid-template-columns:220px 1fr 115px;gap:14px;align-items:center;margin:12px 0;font-size:11px}.rank-track{background:#eef4f1;height:13px;border-radius:4px;overflow:hidden}.rank-track i{display:block;height:100%;background:#79b8a4}.supplier-rank b{text-align:right}.volume-chart{display:flex;align-items:end;gap:16px;padding:30px 5px 20px;overflow-x:auto;min-height:195px}.volume-chart>div{min-width:45px;flex:1;text-align:center}.volume-column{background:#79b8a4;position:relative;min-height:1px;border-radius:4px 4px 0 0}.volume-column span{position:absolute;top:-20px;left:0;width:100%;font-size:10px}.volume-chart small{font-size:9px}#detail .metric b{font-size:22px}@media(max-width:700px){.supplier-rank{grid-template-columns:1fr 90px}.supplier-rank .rank-track{display:none}dialog{padding:16px}#detail .card{padding:14px}}
.analytics-chart{overflow-x:auto}.analytics-chart svg{min-width:600px}

.supplier-rank{grid-template-columns:minmax(160px,220px) minmax(120px,1fr) 110px 150px}.supplier-volume{text-align:right}.supplier-volume strong{font-size:14px;color:#137366}.rank-heading{color:#72848c;border-bottom:1px solid #dfe7e6;padding-bottom:10px}.rank-heading span:nth-child(n+3){text-align:right}@media(max-width:700px){.supplier-rank{grid-template-columns:1fr 100px}.supplier-volume{grid-column:1/-1;text-align:left;padding-bottom:10px;border-bottom:1px solid #edf1ef}.rank-heading{display:none}}

.modal-top{position:sticky;top:-28px;display:flex;justify-content:flex-end;background:white;z-index:3;margin:-8px 0 4px;padding:4px 0}.modal-top button{font-size:25px;line-height:1;padding:5px 10px} @media(max-width:700px){.modal-top{top:-16px}}

.series-toggle{border:0;padding:5px 7px;background:transparent;font-size:11px}.series-toggle[aria-pressed="false"]{opacity:.4;text-decoration:line-through}.series-toggle:focus-visible{outline:2px solid #137366}.analytics-chart [data-series]{cursor:pointer;pointer-events:visiblePainted}.analytics-chart path[data-series]:hover{stroke-width:4}

.supplier-history-toggle{border:0;background:transparent;text-align:left;padding:4px 0;color:#137366;font:inherit;cursor:pointer}.supplier-history-toggle:hover{text-decoration:underline}.supplier-history-toggle[aria-expanded="true"] span{display:inline-block;transform:rotate(180deg)}.supplier-history{background:#f4f8f6;border:1px solid #dfe7e6;border-radius:8px;padding:15px;margin:4px 0 18px}.supplier-history[hidden]{display:none}.supplier-history h4{margin:0 0 12px;font-size:12px}

.supplier-score-row{cursor:pointer}.supplier-score-row:focus{outline:2px solid #137366}.score-track{display:block;height:5px;background:#e7eeeb;margin-top:6px;min-width:65px}.score-track i{display:block;height:100%;background:#137366}#supplierPerformance tr[hidden]{display:none}#supplierPerformance h4{margin:20px 0 10px}#supplierPerformance tr[id^="supplier-history"]>td{background:#f4f8f6;padding:20px}

.sort-column{border:0;background:transparent;padding:0;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;white-space:normal}.sort-column:hover{color:#137366}.sort-column:focus-visible{outline:2px solid #137366}

.category-management{border:1px solid #dfe7e6;border-radius:8px;margin:12px 0;padding:14px}.category-management summary{cursor:pointer;padding:5px;font-size:14px}.category-management summary span{float:right;font-size:12px;color:#72848c}.category-management[open] summary{padding-bottom:16px;border-bottom:1px solid #edf1ef}
