@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";.warehouse-upload-form{gap:16px;display:grid}.warehouse-date-field{gap:6px;max-width:360px;display:grid}.warehouse-date-field span{color:#374151;font-size:13px;font-weight:700}.warehouse-date-field input{height:40px;font:inherit;color:#1f2937;background:#fff;border:1px solid #d7dbe2;border-radius:10px;padding:0 12px}.warehouse-date-field small{color:#8a919d;font-size:12px}.warehouse-drop-zone{cursor:pointer;color:#697281;background:#fafbfc;border:1px dashed #c7ccd5;border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:118px;transition:all .15s;display:flex;position:relative}.warehouse-drop-zone svg{color:#fe2c55}.warehouse-drop-zone strong{color:#374151;font-size:14px}.warehouse-drop-zone span{color:#9299a4;font-size:12px}.warehouse-drop-zone.has-file{background:#fff;border-style:solid}.warehouse-drop-zone.drag-active{background:#fff2f5;border-color:#fe2c55;box-shadow:0 0 0 3px #fe2c551a}.warehouse-drop-zone button{color:#6b7280;background:#f0f1f4;border:0;border-radius:8px;place-items:center;width:28px;height:28px;display:grid;position:absolute;top:12px;right:12px}.warehouse-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.warehouse-preview-grid>div{background:#fff;border:1px solid #eceef1;border-radius:12px;padding:13px 14px}.warehouse-preview-grid small{color:#8c94a0;margin-bottom:5px;font-size:12px;display:block}.warehouse-preview-grid b{color:#252936;font-size:18px}.warehouse-snapshot-note{color:#4d5562;background:#f8f8fa;border-radius:11px;gap:4px;padding:13px 15px;font-size:13px;display:grid}.warehouse-snapshot-note strong{color:#252936}.warehouse-snapshot-note span{color:#78808c;font-size:12px}.warehouse-snapshot-note em{color:#b45309;font-size:12px;font-style:normal}.warehouse-upload-help{color:#66707d;gap:10px;font-size:13px;line-height:1.65;display:grid}.warehouse-upload-help p,.warehouse-upload .error-message,.warehouse-upload .success-message,.warehouse-upload .attention-message{margin:0}@media (width<=700px){.warehouse-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.warehouse-drop-zone{text-align:center;flex-wrap:wrap;padding:24px 18px}.warehouse-drop-zone span{width:100%}}.warehouse-preview-grid:not(.brand-preview-grid){grid-template-columns:repeat(5,minmax(0,1fr))}.brand-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.period-preview-grid{grid-template-columns:repeat(5,minmax(0,1fr))}@media (width<=700px){.warehouse-preview-grid:not(.brand-preview-grid),.period-preview-grid,.brand-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.warehouse-page{gap:16px}.warehouse-page .button-row{flex-shrink:0}.warehouse-filter-bar{border:1px solid var(--line);background:#fff;border-radius:7px;flex-wrap:wrap;gap:10px;padding:12px;display:flex}.warehouse-filter-bar .select-box{min-width:175px}.warehouse-filter-bar .search-box{flex:1;min-width:180px}.warehouse-filter-bar .search-box input{width:100%}.warehouse-source{color:var(--muted);overflow-wrap:anywhere;align-items:flex-start;gap:7px;font-size:12px;line-height:1.7;display:flex}.warehouse-source svg{flex-shrink:0;margin-top:3px}.warehouse-source b{color:var(--ink)}.warehouse-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.warehouse-metric{border:1px solid var(--line);background:#fff;border-radius:7px;flex-direction:column;gap:8px;min-width:0;padding:17px 18px;display:flex}.warehouse-metric>span{color:var(--muted);font-size:12px}.warehouse-metric strong{font-variant-numeric:tabular-nums;letter-spacing:-.4px;font-size:26px;font-weight:700}.warehouse-metric small{color:var(--muted);font-size:11px}.warehouse-metric em{color:#5d6571;border-top:1px solid #f0f1f3;padding-top:8px;font-size:10px;font-style:normal;line-height:1.5}.warehouse-metric[data-metric=value]{border-top:3px solid var(--teal)}.warehouse-metric[data-metric=noSales28Value]{border-top:3px solid #df9a37}.warehouse-structure{grid-template-columns:1.4fr 1fr;gap:12px;display:grid}.warehouse-age-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.warehouse-age{text-align:left;background:#fbfcfd;border:1px solid #e4e7eb;border-radius:6px;flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.warehouse-age:hover,.warehouse-age.selected{border-color:var(--teal);background:#f5fbf9}.warehouse-age>div:first-child{justify-content:space-between;align-items:center;gap:6px;font-size:12px;display:flex}.warehouse-age span{color:var(--muted);font-size:10px}.warehouse-age strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:17px}.warehouse-age small{color:var(--muted);font-size:10px;line-height:1.7}.warehouse-share{background:#ebedf1;border-radius:3px;height:5px;margin-top:auto;overflow:hidden}.warehouse-share i{background:#4776e6;height:100%;display:block}.warehouse-age.new .warehouse-share i{background:var(--teal)}.warehouse-age.unknown .warehouse-share i{background:#d69a3b}.warehouse-note{color:var(--muted);align-items:flex-start;gap:7px;margin:14px 0 0;font-size:11px;line-height:1.7;display:flex}.warehouse-note svg{color:#b98024;flex-shrink:0;margin-top:2px}.warehouse-risk-links{grid-template-columns:1fr 1fr;gap:8px;display:grid}.warehouse-risk-links button{text-align:left;background:#fff;border:1px solid #eceef1;border-radius:5px;align-items:center;gap:8px;padding:10px;font-size:11px;line-height:1.5;display:flex}.warehouse-risk-links button:hover,.warehouse-risk-links button.active{background:#fff9ed;border-color:#d79b44}.warehouse-risk-links button span{flex:1}.warehouse-risk-links b{font-size:15px}.warehouse-risk-links svg{color:#8a8f98;flex-shrink:0}.warehouse-trend table{min-width:760px}.warehouse-trend td small{color:var(--muted);font-size:10px}.warehouse-trend th,.warehouse-trend td{font-size:11px}.warehouse-product-name{text-overflow:ellipsis;white-space:nowrap;max-width:210px;color:var(--muted);margin-top:5px;display:block;overflow:hidden}.warehouse-row-risks{flex-wrap:wrap;gap:4px;max-width:230px;display:flex}.warehouse-method{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:6px;padding:13px 16px;font-size:11px;line-height:1.8}.warehouse-method summary{cursor:pointer;color:#404956;font-size:12px}.warehouse-method p{margin:8px 0 0}.warehouse-empty{color:var(--muted);justify-content:center;align-items:center;gap:12px;padding:25px;font-size:13px;line-height:1.8;display:flex}.warehouse-empty>svg{flex-shrink:0;width:32px;height:32px}.warehouse-empty p{margin:0}.warehouse-page button:disabled{opacity:.5;cursor:not-allowed}.warehouse-details .pagination button{align-items:center;display:inline-flex}.warehouse-filter-bar .select-box>span{white-space:nowrap;flex-shrink:0}.warehouse-brand-list{gap:7px;display:grid}.warehouse-brand-row{text-align:left;background:#fff;border:1px solid #edf0f2;border-radius:8px;grid-template-columns:minmax(160px,1.35fr) 110px 145px minmax(140px,1fr);align-items:center;gap:16px;width:100%;padding:11px 13px;display:grid}.warehouse-brand-row:hover,.warehouse-brand-row.selected{background:#f5fbf9;border-color:#79cbbb}.warehouse-brand-name,.warehouse-brand-stock,.warehouse-brand-value{flex-direction:column;gap:3px;min-width:0;display:flex}.warehouse-brand-name b{color:#1f2937;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.warehouse-brand-name small,.warehouse-brand-stock small,.warehouse-brand-value small{color:var(--muted);font-size:10px}.warehouse-brand-stock b,.warehouse-brand-value b{color:#1f2937;font-variant-numeric:tabular-nums;font-size:13px}.warehouse-brand-bar{background:#edf2f1;border-radius:5px;height:8px;overflow:hidden}.warehouse-brand-bar i{background:linear-gradient(90deg,#12a594,#61cdbb);border-radius:5px;height:100%;display:block}.warehouse-inline-brand{color:#374151;text-align:left;background:0 0;border:0;flex-direction:column;gap:3px;padding:0;font-size:11px;display:flex}.warehouse-inline-brand:hover,.warehouse-inline-brand.selected{color:#087962}.warehouse-inline-brand small{color:#b45309;font-size:9px}.warehouse-details table{min-width:1600px}.warehouse-period-list{gap:7px;display:grid}.warehouse-period-row{text-align:left;background:#fff;border:1px solid #edf0f2;border-radius:8px;grid-template-columns:minmax(160px,1.35fr) 100px 145px minmax(140px,1fr);align-items:center;gap:16px;width:100%;padding:11px 13px;display:grid}.warehouse-period-row:hover,.warehouse-period-row.selected{background:#f5fbf9;border-color:#79cbbb}.warehouse-period-name,.warehouse-period-stock,.warehouse-period-value{flex-direction:column;gap:3px;min-width:0;display:flex}.warehouse-period-name b{color:#1f2937;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.warehouse-period-name small,.warehouse-period-stock small,.warehouse-period-value small{color:var(--muted);font-size:10px}.warehouse-period-stock b,.warehouse-period-value b{color:#1f2937;font-variant-numeric:tabular-nums;font-size:13px}.warehouse-period-bar{background:#edf2f1;border-radius:5px;height:8px;overflow:hidden}.warehouse-period-bar i{background:linear-gradient(90deg,#4776e6,#8aa8f2);border-radius:5px;height:100%;display:block}@media (width<=1250px){.warehouse-structure{grid-template-columns:1fr}.warehouse-metric strong{font-size:23px}}@media (width<=650px){.warehouse-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.warehouse-metric{padding:12px}.warehouse-metric strong{font-size:18px}.warehouse-metric small{font-size:10px;line-height:1.5}.warehouse-age-cards{grid-template-columns:1fr}.warehouse-age{grid-template-columns:1fr 1fr;align-items:center;display:grid}.warehouse-age strong{text-align:right}.warehouse-age small{grid-column:span 2}.warehouse-share{grid-column:span 2;width:100%}.warehouse-filter-bar .select-box{flex:1;min-width:100%}.warehouse-filter-bar .search-box{min-width:100%}.warehouse-page .panel-head{flex-wrap:wrap}.warehouse-page .page-heading{gap:12px}.warehouse-page .button-row{flex-wrap:wrap;gap:7px}.warehouse-risk-links button{padding:9px 8px;font-size:10px}.warehouse-metric em{font-size:9px}.warehouse-page .pagination{gap:8px}.warehouse-source{font-size:10px}.warehouse-page .table-wrap{max-width:calc(100% + 28px)}.warehouse-brand-row{grid-template-columns:1fr 1fr;gap:9px;padding:10px}.warehouse-brand-name,.warehouse-brand-bar{grid-column:1/-1}.warehouse-inline-brand{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.warehouse-period-row{grid-template-columns:1fr 1fr;gap:9px;padding:10px}.warehouse-period-name,.warehouse-period-bar{grid-column:1/-1}}:root{color:#20232a;font-synthesis:none;letter-spacing:0;--red:#fe2c55;--ink:#161823;--teal:#12a594;--line:#e5e7eb;--muted:#6b7280;background:#f5f6f8;font-family:Inter,Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.app{grid-template-columns:232px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;z-index:30;background:#12141a;flex-direction:column;width:232px;transition:all .2s;display:flex;position:fixed;inset:0 auto 0 0}.brand{border-bottom:1px solid #292b31;align-items:center;gap:11px;height:68px;padding:0 18px;display:flex}.brand-mark{width:30px;height:30px;position:relative}.brand-mark i{border:4px solid #25f4ee;border-radius:3px;width:18px;height:24px;position:absolute;top:1px;left:2px;transform:rotate(-8deg)}.brand-mark i+i{border-color:var(--red);top:5px;left:9px;transform:rotate(8deg)}.brand>span:nth-child(2){flex-direction:column;display:flex}.brand b{font-size:15px}.brand small{color:#92959e;margin-top:2px;font-size:11px}.sidebar nav{flex:1;padding:15px 10px}.sidebar nav>small{color:#70747d;padding:16px 10px 7px;font-size:11px;display:block}.sidebar nav button,.sidebar-foot button{color:#aeb1b9;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;width:100%;height:42px;margin:2px 0;padding:0 11px;display:flex}.sidebar nav button svg,.sidebar-foot svg{width:18px}.sidebar nav button:hover,.sidebar nav button.active{color:#fff;background:#25272d}.sidebar nav button.active{box-shadow:inset 3px 0 var(--red)}.nav-badge{background:var(--red);border-radius:10px;margin-left:auto;padding:2px 6px;font-size:10px}.sidebar-foot{border-top:1px solid #292b31;padding:10px}.collapse-btn svg{transition:all .2s}.mobile-close{display:none}.app main{grid-column:2;min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:20;background:#fff;justify-content:space-between;align-items:center;height:68px;padding:0 24px;display:flex;position:sticky;top:0}.top-search{color:#8b9099;background:#f4f5f7;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;width:min(400px,38vw);height:36px;padding:0 11px;font-size:13px;display:flex}.top-search svg{width:16px}.top-search kbd{background:#fff;border:1px solid #ddd;border-radius:4px;margin-left:auto;padding:2px 5px;font-size:10px}.top-actions{align-items:center;gap:12px;display:flex}.currency-mode{border:1px solid var(--line);border-radius:4px;padding:6px 9px;font-size:12px}.bell,.menu-btn{background:0 0;border:0;padding:6px;position:relative}.bell svg{width:19px}.bell i{background:var(--red);border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.user-avatar,.avatar{color:#fff;background:#21242b;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:inline-flex}.user-name{flex-direction:column;display:flex}.user-name b{font-size:12px}.user-name small{color:#8b9099;font-size:10px}.menu-btn{display:none}.filters-bar{border-bottom:1px solid var(--line);z-index:19;background:#fff;align-items:center;gap:11px;min-height:55px;padding:8px 24px;display:flex;position:sticky;top:68px;overflow-x:auto}.date-presets,.country-tabs{white-space:nowrap;align-items:center;display:flex}.date-presets{background:#f2f3f5;border-radius:5px;gap:2px;padding:3px}.date-presets>svg{margin:0 6px}.date-presets button,.country-tabs button{background:0 0;border:0;border-radius:4px;padding:6px 9px;font-size:12px}.date-presets button.active{color:var(--ink);background:#fff;font-weight:600;box-shadow:0 1px 3px #00000018}.country-tabs{gap:3px}.country-tabs>span{color:var(--muted);margin-right:4px;font-size:11px}.country-tabs button{border:1px solid var(--line);padding:5px 8px}.country-tabs button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.filter-separator{background:var(--line);width:1px;height:24px}.select-box{background:#fff;border:1px solid #dfe1e5;border-radius:5px;align-items:center;min-width:125px;height:32px;display:inline-flex;position:relative}.select-box>span{color:#777;padding-left:8px;font-size:11px}.select-box select{appearance:none;background:0 0;border:0;outline:0;width:100%;height:100%;padding:0 27px 0 9px;font-size:12px}.select-box svg{pointer-events:none;color:#888;position:absolute;right:7px}.compare-toggle{white-space:nowrap;align-items:center;gap:7px;font-size:12px;display:flex}.compare-toggle input{display:none}.compare-toggle span{background:#c9ccd2;border-radius:10px;width:28px;height:16px;position:relative}.compare-toggle span:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:all .15s;position:absolute;top:2px;left:2px}.compare-toggle input:checked+span{background:var(--teal)}.compare-toggle input:checked+span:after{left:14px}.icon-btn{border:1px solid var(--line);color:#4b5058;background:#fff;border-radius:5px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.content{max-width:1800px;margin:auto;padding:24px}.page-stack{flex-direction:column;gap:18px;display:flex}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.page-heading h1{letter-spacing:0;margin:3px 0 5px;font-size:24px;line-height:1.25}.page-heading p,.panel-head p{color:var(--muted);margin:0;font-size:12px}.eyebrow{color:var(--red);text-transform:uppercase;font-size:11px;font-weight:700}.metric-grid{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.metric-card{border:1px solid var(--line);background:#fff;border-radius:7px;min-width:0;padding:15px 16px}.metric-label{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.info-dot{border:1px solid #cdd0d5;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;display:inline-flex}.metric-card>strong{white-space:nowrap;margin:9px 0 7px;font-size:22px;display:block}.metric-foot{color:#8a8f98;align-items:center;gap:6px;font-size:10px;display:flex}.delta{align-items:center;font-size:11px;font-weight:600;display:inline-flex}.delta.good{color:#07876f}.delta.bad,.text-bad{color:#db2f43!important}.panel{border:1px solid var(--line);background:#fff;border-radius:7px;min-width:0;padding:18px}.panel-head{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:16px;display:flex}.panel-head h3{margin:0 0 4px;font-size:14px}.overview-grid{grid-template-columns:2fr 1fr;gap:12px;display:grid}.three-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.host-layout{grid-template-columns:2fr 1fr;gap:12px;display:grid}.span-2{min-width:0}.chart-lg{height:290px}.chart-md{height:240px}.chart-sm{height:190px}.recharts-text{font-size:10px}.text-btn{color:#555;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;font-size:12px;display:inline-flex}.text-btn:hover{color:var(--red)}.primary-btn,.secondary-btn{border-radius:5px;justify-content:center;align-items:center;gap:7px;height:34px;padding:0 13px;font-size:12px;font-weight:600;display:inline-flex}.primary-btn{background:var(--ink);border:1px solid var(--ink);color:#fff}.secondary-btn{color:#333;background:#fff;border:1px solid #d9dce1}.pill{color:#555;white-space:nowrap;background:#f0f1f3;border-radius:4px;align-items:center;gap:4px;width:max-content;padding:3px 7px;font-size:10px;display:inline-flex}.pill.good{color:#087962;background:#e8f7f2}.pill.warn{color:#95630c;background:#fff3d9}.pill.bad{color:#c51f3d;background:#ffeaed}.pill.info{color:#3c5fa7;background:#eaf0ff}.alert-list{flex-direction:column;display:flex}.alert-row{text-align:left;background:#fff;border:0;border-bottom:1px solid #edf0f2;grid-template-columns:32px 1fr auto;align-items:center;gap:8px;padding:12px 0;display:grid}.alert-row:last-child{border-bottom:0}.alert-row>span:nth-child(2){flex-direction:column;gap:4px;min-width:0;display:flex}.alert-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.alert-row small{color:var(--muted);font-size:10px}.alert-icon{border-radius:5px;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.alert-icon.high{color:#d72342;background:#ffeaed}.alert-icon.mid{color:#b87810;background:#fff2db}.funnel-list{flex-direction:column;gap:5px;display:flex}.funnel-list>div>div:first-child{justify-content:space-between;font-size:11px;display:flex}.funnel-list small{text-align:right;color:#8b9099;font-size:9px;display:block}.funnel-track{background:#f1f2f4;border-radius:3px;height:7px;margin-top:4px;overflow:hidden}.funnel-track i{border-radius:3px;height:100%;display:block}.rank-list>div{border-bottom:1px solid #f0f1f2;grid-template-columns:25px 1fr auto;align-items:center;gap:8px;padding:9px 0;display:grid}.rank-list>div:last-child{border:0}.rank-list span:nth-child(2){flex-direction:column;gap:2px;display:flex}.rank-list strong{font-size:11px}.rank-list small{color:var(--muted);font-size:9px}.rank-list b{font-size:12px}.rank-num{background:#eef0f2;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;font-size:10px;font-weight:700;display:inline-flex}.rank-num.r1{color:#916400;background:#ffe9ad}.rank-num.r2{color:#5e6470;background:#e6e9ed}.rank-num.r3{color:#975b32;background:#f3ddcd}.insight-band{border-left:3px solid var(--red);background:#f8f8f9;grid-template-columns:36px 1fr auto;align-items:center;gap:13px;padding:15px;display:grid}.insight-icon{color:#ac720d;background:#fff0d5;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.insight-band strong{margin:7px 0 4px;font-size:13px;display:block}.insight-band p{color:#62666e;margin:0;font-size:11px;line-height:1.65}.quick-actions{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px;display:grid}.quick-actions button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:5px;align-items:center;gap:10px;padding:11px;display:flex}.quick-actions svg{color:#777;width:18px}.quick-actions span{color:#777;flex-direction:column;font-size:10px;display:flex}.quick-actions b{color:#222;margin-bottom:2px;font-size:11px}.summary-strip,.alert-stats{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:repeat(4,1fr);display:grid}.summary-strip>div,.alert-stats>div{border-right:1px solid var(--line);align-items:center;gap:12px;padding:16px 18px;display:flex}.summary-strip>div:last-child,.alert-stats>div:last-child{border:0}.summary-strip svg,.alert-stats svg{color:#707680;width:20px}.summary-strip span,.alert-stats span{flex-direction:column;display:flex}.summary-strip small,.alert-stats small{color:#747982;font-size:10px}.summary-strip b,.alert-stats b{margin-top:2px;font-size:20px}.dot{border-radius:50%;height:10px;width:10px!important;display:block!important}.dot.danger{background:var(--red)}.dot.amber{background:#e7a233}.search-box{background:#fff;border:1px solid #dfe1e5;border-radius:5px;align-items:center;gap:6px;height:32px;padding:0 9px;display:flex}.search-box svg{color:#777}.search-box input{border:0;outline:0;width:155px;font-size:11px}.table-tools{gap:7px;display:flex}.table-wrap{margin:0 -18px;overflow:auto}.table-wrap table{border-collapse:collapse;width:100%;min-width:1080px;font-size:11px}.table-wrap th{color:#646973;text-align:left;white-space:nowrap;background:#f8f9fa;border-top:1px solid #eceef0;border-bottom:1px solid #e6e8eb;height:38px;padding:0 12px;font-weight:600;position:sticky;top:0}.table-wrap th svg{vertical-align:middle;display:inline}.table-wrap td{white-space:nowrap;border-bottom:1px solid #eff0f2;height:49px;padding:7px 12px}.table-wrap tr:hover td{background:#fafbfc}.table-wrap .num{text-align:right}.table-wrap .strong{color:#222;font-weight:700}.country-code{background:#f0f1f3;border-radius:3px;padding:2px 5px;font-size:9px;font-weight:700;display:inline-flex}.block{color:var(--muted);margin-top:3px;display:block}.pagination{color:var(--muted);justify-content:space-between;align-items:center;padding-top:13px;font-size:10px;display:flex}.pagination button{border:1px solid var(--line);background:#fff;height:27px;margin-left:-1px;padding:0 9px}.pagination button.active{background:var(--ink);color:#fff}.product-cell{align-items:center;gap:8px;display:flex}.product-cell>span:last-child{flex-direction:column;display:flex}.product-cell small{color:var(--muted);margin-top:3px}.product-thumb{color:#6d6060;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;display:flex}.host-cell{align-items:center;gap:7px;display:flex}.host-cell .avatar{width:27px;height:27px}.score-high{color:#07876f}.top-host{text-align:center;position:relative}.top-host>.avatar.large{background:var(--ink);width:62px;height:62px;font-size:20px}.top-host>svg{color:#7f5800;background:#ffd76b;border-radius:50%;padding:4px;position:absolute;top:43px;left:calc(50% + 13px)}.top-host h2{margin:8px 0 2px;font-size:18px}.top-host p{color:var(--muted);margin:0;font-size:11px}.top-host>strong{margin:12px 0;font-size:30px;display:block}.top-host>strong small{color:#777;font-size:11px}.top-host>div{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;padding-top:12px;display:grid}.top-host>div span{color:#777;flex-direction:column;font-size:9px;display:flex}.top-host>div b{color:#222;margin-top:3px;font-size:11px}.alert-stats{grid-template-columns:repeat(3,1fr)}.alert-stats .critical{color:#cb2340;background:#fff8f9}.alerts-full{flex-direction:column;gap:9px;display:flex}.alert-card{border:1px solid var(--line);border-left:3px solid #aeb2b9;border-radius:5px;grid-template-columns:minmax(300px,1fr) auto auto;align-items:center;gap:25px;padding:14px;display:grid}.alert-card.level-高{border-left-color:var(--red)}.alert-card.level-中{border-left-color:#e49b2f}.alert-main{gap:10px;display:flex}.alert-symbol{background:#f3f4f5;border-radius:5px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.alert-title-line{align-items:center;gap:5px;display:flex}.alert-title-line small{color:var(--muted);margin-left:3px}.alert-card h3{margin:7px 0 3px;font-size:13px}.alert-card p{color:#555;margin:0 0 4px;font-size:10px}.muted{color:var(--muted);font-size:10px}.alert-values{gap:18px;display:flex}.alert-values span{flex-direction:column;display:flex}.alert-values small{color:var(--muted);font-size:9px}.alert-values b{margin-top:4px;font-size:11px}.alert-actions{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.import-layout{grid-template-columns:1.5fr 1fr;gap:12px;display:grid}.import-form{flex-direction:column;gap:9px;display:flex}.import-form>label{font-size:11px;font-weight:600}.drop-zone{cursor:pointer;background:#fafbfc;border:1px dashed #b9bdc4;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:205px;display:flex;position:relative}.drop-zone:hover{border-color:var(--teal);background:#f6fcfa}.drop-zone>svg{color:#89909a;width:34px;height:34px}.drop-zone strong{font-size:12px}.drop-zone span{color:var(--muted);font-size:10px}.drop-zone.has-file{background:#f2fbf8;border-style:solid;border-color:#8bd5c7}.drop-zone button{background:#fff;border:0;border-radius:4px;position:absolute;top:10px;right:10px}.wide{width:100%}.success-message{color:#087962;background:#edf9f5;border-radius:5px;gap:8px;padding:10px;display:flex}.success-message span{flex-direction:column;display:flex}.success-message strong{font-size:11px}.success-message small{margin-top:2px;font-size:9px}.steps{margin:0;padding:0;list-style:none}.steps li{gap:10px;min-height:57px;display:flex;position:relative}.steps li:after{content:"";background:#ddd;width:1px;height:30px;position:absolute;top:28px;left:13px}.steps li:last-child:after{display:none}.steps li>span{background:#eef0f2;border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;font-size:10px;display:flex}.steps li.active>span{background:var(--ink);color:#fff}.steps li div{flex-direction:column;display:flex}.steps b{font-size:11px}.steps small{color:var(--muted);margin-top:3px;font-size:9px}.import-note{background:#f7f8fa;border-radius:5px;padding:12px}.import-note strong{font-size:11px}.import-note p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.6}code{color:#414750;background:#f1f2f4;border-radius:3px;padding:4px 6px;font-size:10px}.scrim{display:none}.is-collapsed{grid-template-columns:68px 1fr}.is-collapsed .sidebar{width:68px}.is-collapsed .brand>span:nth-child(2),.is-collapsed .sidebar nav button span,.is-collapsed .sidebar nav>small,.is-collapsed .sidebar-foot span,.is-collapsed .nav-badge{display:none}.is-collapsed .sidebar nav button,.is-collapsed .sidebar-foot button{justify-content:center}.is-collapsed .collapse-btn svg{transform:rotate(180deg)}@media (width<=1200px){.metric-grid{grid-template-columns:repeat(3,1fr)}.three-grid{grid-template-columns:1fr 1fr}.three-grid>.panel:last-child{grid-column:span 2}.alerts-full .alert-card{grid-template-columns:1fr auto}.alert-actions{flex-direction:row;grid-column:span 2;justify-content:flex-end}.filters-bar{padding-inline:16px}.compare-toggle{display:none}}@media (width<=820px){.app,.is-collapsed{display:block}.sidebar,.is-collapsed .sidebar{width:232px;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.is-collapsed .brand>span:nth-child(2),.is-collapsed .sidebar nav button span,.is-collapsed .sidebar nav>small,.is-collapsed .sidebar-foot span,.is-collapsed .nav-badge{display:flex}.mobile-close{color:#fff;background:0 0;border:0;margin-left:auto;display:block}.scrim{z-index:25;background:#0008;display:block;position:fixed;inset:0}.app main{display:block}.topbar{padding:0 14px}.menu-btn{display:flex}.top-search,.user-name,.currency-mode{display:none}.content{padding:16px}.filters-bar{top:68px}.overview-grid,.host-layout,.import-layout,.three-grid{grid-template-columns:1fr}.three-grid>.panel:last-child{grid-column:auto}.quick-actions{grid-template-columns:1fr}.alert-card{grid-template-columns:1fr!important}.alert-values{padding-left:44px}.alert-actions{grid-column:auto}.summary-strip{grid-template-columns:1fr 1fr}.summary-strip>div:nth-child(2){border-right:0}.summary-strip>div{border-bottom:1px solid var(--line)}.page-heading{align-items:flex-start}.page-heading h1{font-size:21px}.table-tools{flex-wrap:wrap}.sidebar-foot .collapse-btn{display:none}}@media (width<=560px){.metric-grid{grid-template-columns:1fr 1fr}.metric-card>strong{font-size:18px}.metric-card{padding:12px}.page-heading{flex-direction:column}.page-heading>button{align-self:flex-start}.panel{padding:14px}.table-wrap{margin:0 -14px}.chart-lg{height:240px}.alert-stats{grid-template-columns:1fr}.alert-stats>div{border-right:0;border-bottom:1px solid var(--line)}.insight-band{grid-template-columns:35px 1fr}.insight-band>button{grid-column:span 2}.alert-values{grid-template-columns:1fr 1fr;display:grid}.user-avatar{width:30px;height:30px}.top-actions{gap:6px}.summary-strip b{font-size:17px}}.custom-date-range{white-space:nowrap;align-items:center;gap:5px;display:flex}.custom-date-range label{color:var(--muted);font-size:11px}.custom-date-range input{color:#555;background:#fff;border:1px solid #dfe1e5;border-radius:5px;height:32px;padding:0 7px;font-size:11px}.custom-date-range span{color:var(--muted);font-size:11px}.month-picker{color:var(--muted);white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.month-picker input{color:#555;background:#fff;border:1px solid #dfe1e5;border-radius:5px;height:32px;padding:0 7px;font-size:11px}.target-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.target-field{border:1px solid var(--line);background:#fafbfc;border-radius:5px;justify-content:space-between;align-items:center;gap:10px;padding:10px 11px;display:flex}.target-field>span{flex-direction:column;gap:3px;min-width:0;display:flex}.target-field strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.target-field small{color:var(--muted);font-size:9px}.target-field>div{color:var(--muted);background:#fff;border:1px solid #dfe1e5;border-radius:4px;align-items:center;font-size:11px;display:flex}.target-field>div span{padding-left:7px}.target-field input{text-align:right;background:0 0;border:0;outline:0;width:105px;height:29px;padding:0 7px;font-size:11px}.progress-track{background:#eef0f2;border-radius:3px;width:100%;height:4px;margin-top:4px;display:block;overflow:hidden}.progress-track em{background:var(--teal);border-radius:3px;height:100%;display:block}@media (width<=820px){.target-grid{grid-template-columns:1fr 1fr}}@media (width<=560px){.target-grid{grid-template-columns:1fr}.month-picker{justify-content:space-between;width:100%}}.feishu-form{gap:12px}.feishu-form input{background:#fff;border:1px solid #dfe1e5;border-radius:5px;outline:0;height:34px;padding:0 9px;font-size:12px}.feishu-form input:focus{border-color:var(--teal)}.checkbox-label{align-items:center;gap:7px;display:flex!important}.checkbox-label input{width:15px;height:15px}.form-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.form-grid label{flex-direction:column;gap:5px;font-size:11px;font-weight:600;display:flex}.form-hint{color:var(--muted);font-size:10px;line-height:1.6}.button-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sync-status{color:var(--muted);font-size:10px}@media (width<=820px){.form-grid{grid-template-columns:1fr 1fr}}@media (width<=560px){.form-grid{grid-template-columns:1fr}}.connection-editor{border:1px solid var(--line);background:#f8f9fa;border-radius:6px;margin-bottom:16px;padding:14px}.editor-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.editor-head strong{font-size:12px}.feishu-form select{background:#fff;border:1px solid #dfe1e5;border-radius:5px;outline:0;height:34px;padding:0 9px;font-size:12px}.source-toggle{color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:10px;display:inline-flex}.source-toggle span{background:#c9ccd2;border-radius:10px;width:26px;height:15px;position:relative}.source-toggle span:after{content:"";background:#fff;border-radius:50%;width:11px;height:11px;transition:all .15s;position:absolute;top:2px;left:2px}.source-toggle.on{color:#087962}.source-toggle.on span{background:var(--teal)}.source-toggle.on span:after{left:13px}.row-actions{white-space:nowrap;align-items:center;gap:5px;display:flex}.row-actions .delete-btn,.row-actions .danger-btn{height:28px}.live-field-mapping{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.live-field-mapping .editor-head{margin-bottom:10px}.select-cell{text-align:center!important;width:42px!important}.select-cell input{width:15px;height:15px;accent-color:var(--ink)}.table-wrap tr.selected-row td{background:#fff7f8}.selected-count{color:var(--muted);font-size:11px}.batch-delete-confirm{color:#b91f3a;background:#fff7f8;border:1px solid #ffd4dc;border-radius:6px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;margin-bottom:14px;padding:11px 12px;display:grid}.batch-delete-confirm>div{flex-direction:column;gap:3px;display:flex}.batch-delete-confirm strong{font-size:11px}.batch-delete-confirm small{color:#7b5660;font-size:9px}@media (width<=820px){.batch-delete-confirm{grid-template-columns:auto 1fr}.batch-delete-confirm>button{grid-column:span 1}}.task-summary svg{color:var(--teal)}.task-summary>div:nth-child(2) svg,.task-summary>div:nth-child(3) svg{color:var(--red)}.task-form{flex-direction:column;gap:14px;display:flex}.task-form input,.task-form select,.task-form textarea,.task-toolbar input,.task-toolbar select,.week-picker input{color:#252830;background:#fff;border:1px solid #dfe1e5;border-radius:5px;outline:0}.task-form input,.task-form select{height:34px;padding:0 9px}.task-form input:focus,.task-form select:focus,.task-form textarea:focus,.task-toolbar input:focus,.task-toolbar select:focus,.week-picker input:focus{border-color:var(--teal);box-shadow:0 0 0 2px #12a59418}.task-form input[type=range]{accent-color:var(--teal);box-shadow:none;padding:0}.task-text-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.task-text-grid label{flex-direction:column;gap:5px;font-size:11px;font-weight:600;display:flex}.task-text-grid textarea{resize:vertical;min-height:78px;font:inherit;padding:8px 9px;font-size:11px;line-height:1.5}.week-picker{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:10px;display:flex}.week-picker input{height:31px;padding:0 7px;font-size:11px}.task-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.segmented-control{background:#f5f6f8;border:1px solid #dfe1e5;border-radius:5px;display:flex;overflow:hidden}.segmented-control button{color:#62666e;background:0 0;border:0;border-right:1px solid #dfe1e5;height:31px;padding:0 12px;font-size:11px}.segmented-control button:last-child{border-right:0}.segmented-control button.active{background:var(--ink);color:#fff}.task-search{flex:1;min-width:220px;height:33px;padding:0 10px;font-size:11px}.task-toolbar>select{height:33px;padding:0 26px 0 9px;font-size:11px}.inline-status{background:#fff;border:1px solid #dfe1e5;border-radius:4px;height:28px;padding:0 5px;font-size:10px}.task-progress{align-items:center;gap:7px;min-width:112px;display:flex}.task-progress>span{background:#eceef1;border-radius:4px;width:70px;height:5px;display:block;overflow:hidden}.task-progress i{background:var(--teal);border-radius:4px;height:100%;display:block}.task-progress b{min-width:30px;font-size:10px}.wrap-cell{min-width:150px;max-width:240px;line-height:1.45;white-space:normal!important}.task-overdue td{background:#fffafb}.task-overdue:hover td{background:#fff5f7!important}@media (width<=820px){.task-text-grid{grid-template-columns:1fr}.task-toolbar{align-items:stretch}.task-search{flex-basis:100%;min-width:100%}.segmented-control{width:max-content}}@media (width<=560px){.task-summary{grid-template-columns:1fr 1fr}.week-picker{justify-content:space-between;width:100%}.week-picker input{flex:1}.segmented-control{width:100%}.segmented-control button{flex:1;padding:0 7px}.task-toolbar>select{flex:1}}.minutes-layout{grid-template-columns:minmax(0,2.2fr) minmax(260px,.8fr);gap:18px;display:grid}.minutes-main{min-width:0}.minutes-meta input,.minutes-content-label textarea,.action-fields input,.action-fields select{color:#252830;font:inherit;background:#fff;border:1px solid #dfe1e5;border-radius:5px;outline:0}.minutes-meta input,.action-fields input,.action-fields select{height:34px;padding:0 9px}.minutes-meta input:focus,.minutes-content-label textarea:focus,.action-fields input:focus,.action-fields select:focus{border-color:var(--teal);box-shadow:0 0 0 2px #12a59418}.input-with-icon{position:relative}.input-with-icon svg{color:#8b9099;position:absolute;top:9px;left:9px}.input-with-icon input{width:100%;padding-left:30px}.minutes-content-label{flex-direction:column;gap:6px;margin:12px 0;font-size:11px;font-weight:600;display:flex}.minutes-content-label textarea{resize:vertical;min-height:165px;padding:10px;font-size:11px;line-height:1.65}.minutes-preview{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.minutes-preview .editor-head>div{flex-direction:column;gap:3px;display:flex}.minutes-preview .editor-head small{color:var(--muted);font-size:9px}.action-item-list{flex-direction:column;gap:8px;display:flex}.action-item{border:1px solid var(--line);background:#fafbfc;border-radius:6px;grid-template-columns:18px minmax(0,1fr) 32px;align-items:start;gap:10px;padding:11px;display:grid}.action-item.selected{border-left:3px solid var(--teal);padding-left:9px}.action-item>input{width:15px;height:15px;accent-color:var(--teal);margin-top:25px}.action-fields{grid-template-columns:2fr 1.25fr .8fr .85fr .65fr;gap:8px;display:grid}.action-fields label{color:var(--muted);flex-direction:column;gap:5px;font-size:10px;display:flex}.action-item>.icon-btn{margin-top:19px}.minutes-confirm{margin-top:12px}.minutes-history{border-left:1px solid var(--line);min-width:0;padding-left:17px}.minutes-history-list{flex-direction:column;display:flex}.minutes-history-list>div{border-bottom:1px solid #edf0f2;grid-template-columns:20px minmax(0,1fr) 30px 30px;align-items:center;gap:7px;padding:10px 0;display:grid}.minutes-history-list>div>svg{color:var(--teal)}.minutes-history-list span{flex-direction:column;gap:3px;min-width:0;display:flex}.minutes-history-list b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.minutes-history-list small{color:var(--muted);font-size:9px;line-height:1.4}.minutes-history-list a{text-decoration:none}.minutes-note{background:#f7f8fa;border-radius:5px;margin-top:14px;padding:11px}.minutes-note p{color:var(--muted);margin:7px 0 0;font-size:10px;line-height:1.6}@media (width<=1100px){.minutes-layout{grid-template-columns:1fr}.minutes-history{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}.action-fields{grid-template-columns:2fr 1fr 1fr}.action-fields label:nth-child(4),.action-fields label:nth-child(5){grid-row:2}}@media (width<=620px){.action-fields{grid-template-columns:1fr 1fr}.action-fields label:first-child{grid-column:span 2}.action-fields label:nth-child(4),.action-fields label:nth-child(5){grid-row:auto}.minutes-meta{grid-template-columns:1fr}.action-item{grid-template-columns:18px minmax(0,1fr)}.action-item>.icon-btn{grid-column:2;justify-self:end;margin-top:0}.minutes-history-list>div{grid-template-columns:18px minmax(0,1fr) 30px 30px}}.dot.teal{background:var(--teal)}.product-period-hint{white-space:nowrap;color:#343840;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.product-period-hint svg{color:var(--teal)}.mabang-settings{background:#f7f8fa;border:1px solid #eceef1;border-radius:6px;grid-template-columns:1fr 1fr;gap:9px;padding:11px;display:grid}.mabang-settings>label{color:#555;flex-direction:column;gap:5px;font-size:10px;font-weight:600;display:flex}.mabang-settings input{color:#252830;background:#fff;border:1px solid #dfe1e5;border-radius:5px;outline:0;height:34px;padding:0 9px}.mabang-settings input:focus{border-color:var(--teal);box-shadow:0 0 0 2px #12a59418}.mabang-settings .select-box{width:100%;height:34px}.period-preview{color:#4f5661;grid-column:1/-1;align-items:center;gap:8px;padding-top:2px;display:flex}.period-preview>span{flex-direction:column;gap:2px;display:flex}.period-preview b{font-size:11px}.period-preview small{color:var(--muted);font-size:9px}.validation-result,.error-message,.attention-message{border-radius:5px;align-items:flex-start;gap:8px;padding:11px 12px;display:flex}.validation-result{color:#087962;background:#edf9f5}.validation-result strong,.error-message strong{font-size:11px;display:block}.validation-result>div>div:not(.mabang-quality-grid){flex-wrap:wrap;gap:12px;margin:5px 0;display:flex}.validation-result span,.validation-result small,.error-message small{font-size:9px}.validation-result small{line-height:1.5;display:block}.error-message{color:#b91f3a;background:#fff0f2}.error-message span{flex-direction:column;gap:3px;display:flex}.attention-message{color:#825a0b;background:#fff7e5;border:1px solid #f6dfad;font-size:10px;line-height:1.45}.attention-message svg{flex:none}.mabang-quality-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px!important;margin:7px 0!important;display:grid!important}.mabang-quality-grid span{color:#4f6d64;flex-direction:column;gap:2px;display:flex}.mabang-quality-grid b{color:#076a56;font-size:10px}.product-source-bar{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.product-source-bar>span{border-right:1px solid var(--line);overflow-wrap:anywhere;flex-direction:column;gap:4px;min-width:0;padding:11px 15px;font-size:11px;display:flex}.product-source-bar>span:last-child{border-right:0}.product-source-bar b{color:var(--muted);font-size:9px;font-weight:500}.product-summary b{white-space:nowrap;font-size:18px}.product-summary em{color:var(--muted);margin-top:3px;font-size:9px;font-style:normal}.product-summary>div:nth-child(3) .dot{background:var(--teal)}.product-risk-band{border:1px solid var(--line);background:#fff;border-radius:7px;align-items:center;gap:0;padding:10px 14px;display:flex;overflow-x:auto}.product-risk-band>span{border-right:1px solid var(--line);white-space:nowrap;align-items:center;gap:4px;min-height:20px;padding:0 15px;font-size:10px;display:flex}.product-risk-band>span:first-child{padding-left:0}.product-risk-band>span:last-child{border-right:0}.product-risk-band b{font-size:11px}.product-chart{height:230px}.product-table-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.product-table-tools .search-box input{width:190px}.product-table-tools .select-box{min-width:145px}.product-table{min-width:1480px!important}.product-table .product-cell{white-space:normal;max-width:310px}.product-table .product-cell>span:last-child{min-width:0}.product-table .product-cell strong{text-overflow:ellipsis;white-space:nowrap;max-width:250px;line-height:1.35;display:block;overflow:hidden}.product-table .product-cell small{text-overflow:ellipsis;white-space:nowrap;max-width:250px;overflow:hidden}.product-thumb{color:#555;background:#f0f2f4;flex:none}.country-code.unmatched{color:#b91f3a;background:#fff0f2}.table-pagination{color:var(--muted);justify-content:space-between;align-items:center;padding-top:12px;font-size:10px;display:flex}.table-pagination>div{gap:5px;display:flex}.product-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:250px;display:flex}.product-empty>svg{color:#9399a2;width:38px;height:38px}.product-empty strong{font-size:13px}.product-empty span{color:var(--muted);font-size:10px}.product-empty button{margin-top:4px}@media (width<=1100px){.product-source-bar{grid-template-columns:1fr 1fr}.product-source-bar>span:nth-child(2){border-right:0}.product-source-bar>span:nth-child(-n+2){border-bottom:1px solid var(--line)}.product-table-tools{justify-content:flex-start}.panel-head:has(.product-table-tools){flex-direction:column}.panel-head:has(.product-table-tools)>.product-table-tools{width:100%}}@media (width<=620px){.mabang-settings{grid-template-columns:1fr}.period-preview{grid-column:auto}.mabang-quality-grid,.product-source-bar{grid-template-columns:1fr 1fr}.product-source-bar>span{padding:10px}.product-risk-band{flex-direction:column;align-items:stretch;padding:5px 12px}.product-risk-band>span{border-right:0;border-bottom:1px solid var(--line);padding:7px 0}.product-risk-band>span:last-child{border-bottom:0}.product-table-tools .search-box,.product-table-tools .select-box,.product-table-tools .search-box input,.product-table-tools .segmented-control{width:100%}.product-summary b{font-size:16px}.product-chart{height:210px}.table-pagination{align-items:flex-start;gap:8px}}.text-btn{color:var(--teal);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:3px 0;font-size:10px}.text-btn:hover{text-decoration:underline}.uploaded-weeks{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.uploaded-weeks-head{justify-content:space-between;align-items:center;display:flex}.uploaded-weeks-head strong{font-size:11px}.uploaded-weeks-head small,.uploaded-weeks-empty{color:var(--muted);font-size:9px}.uploaded-week{text-align:left;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;padding:7px 8px;display:flex}.uploaded-week:hover{border-color:var(--teal);background:#f5fbf9}.uploaded-week span{flex-direction:column;gap:2px;min-width:0;display:flex}.uploaded-week b{font-size:10px}.uploaded-week small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:230px;font-size:9px;overflow:hidden}.uploaded-week em{color:var(--teal);white-space:nowrap;font-size:9px;font-style:normal}.drop-zone.drag-active{border-color:var(--teal);background:#effaf7;box-shadow:0 0 0 2px #12a59420}.product-compare-grid{grid-template-columns:repeat(4,1fr);display:grid}.product-compare-grid>div{border-right:1px solid var(--line);flex-direction:column;gap:4px;padding:12px 15px;display:flex}.product-compare-grid>div:last-child{border-right:0}.product-compare-grid span{color:var(--muted);font-size:10px}.product-compare-grid b{font-size:16px}.product-compare-grid em{font-size:10px;font-style:normal}.product-compare-grid em small{color:var(--muted)}.text-good{color:#087962}.product-compare-empty{color:var(--muted);align-items:center;gap:8px;padding:4px;font-size:10px;display:flex}.product-compare-empty svg{color:var(--teal);flex:none}@media (width<=620px){.product-compare-grid{grid-template-columns:1fr 1fr}.product-compare-grid>div:nth-child(2){border-right:0}.product-compare-grid>div{border-bottom:1px solid var(--line)}.product-compare-grid>div:nth-last-child(-n+2){border-bottom:0}.period-preview{flex-wrap:wrap;align-items:flex-start}.text-btn{margin-left:24px}}.shop-gmv-matrix{scrollbar-gutter:stable;margin:0 -18px;padding:0 18px 2px}.shop-gmv-matrix table{border-collapse:separate;border-spacing:0;table-layout:fixed;font-variant-numeric:tabular-nums;border:1px solid #e4e8ee;border-radius:10px;min-width:760px;overflow:hidden}.shop-gmv-matrix th,.shop-gmv-matrix td{vertical-align:middle;text-align:center!important}.shop-gmv-matrix thead th{color:#475467;background:#f7fafc;border-top:0;height:54px;font-size:11px;line-height:1.35}.shop-gmv-matrix thead th:not(:first-child){min-width:130px}.shop-gmv-matrix th:first-child,.shop-gmv-matrix td:first-child{z-index:1;background:#fff;width:130px;position:sticky;left:0;box-shadow:1px 0 #edf0f2}.shop-gmv-matrix thead th:first-child{z-index:3;background:#f7fafc}.shop-gmv-matrix tbody td{color:#111827;height:48px}.shop-gmv-matrix tbody tr:nth-child(2n) td,.shop-gmv-matrix tbody tr:nth-child(2n) td:first-child{background:#fbfcfd}.shop-gmv-matrix tbody tr:hover td,.shop-gmv-matrix tbody tr:hover td:first-child{background:#f8fffd}.shop-gmv-matrix .block{color:#667085;margin-top:4px;font-size:10px;font-weight:700}.shop-gmv-matrix .total-col{color:#062c26;z-index:1;font-weight:800;position:sticky;right:0;box-shadow:-1px 0 #d8eee8;background:#edf9f6!important}.shop-gmv-matrix thead .total-col{z-index:3;background:#e7f6f2!important}.shop-gmv-matrix .empty-cell{color:#a7afbd}.shop-gmv-matrix .summary-row th,.shop-gmv-matrix .summary-row td{color:#062c26;border-top:2px solid #9ed8cc;height:52px;font-weight:800;background:#e2f4ef!important}.shop-gmv-matrix .summary-row th{z-index:2}.shop-gmv-matrix table{width:max-content;min-width:100%}.shop-gmv-matrix thead th.date-col,.shop-gmv-matrix tbody td:not(.total-col),.shop-gmv-matrix tfoot td:not(.total-col){width:118px;min-width:118px}.shop-gmv-matrix th:first-child,.shop-gmv-matrix td:first-child,.shop-gmv-matrix .total-col{width:158px;min-width:158px}.shop-gmv-matrix tbody .shop-label{text-align:center!important}.shop-gmv-matrix tbody tr:nth-child(2n) .shop-label{background:#fbfcfd}.shop-gmv-matrix tbody tr:hover .shop-label{background:#f8fffd}.shop-gmv-matrix tfoot .total-col{z-index:3}.error-message{color:#c51f3d;background:#fff0f2;border-radius:5px;gap:8px;padding:10px;display:flex}.error-message span{flex-direction:column;display:flex}.error-message strong{font-size:11px}.error-message small{margin-top:2px;font-size:9px}.validation-result{color:#096f5d;background:#f0f9f6;border:1px solid #bce3d9;border-radius:5px;gap:9px;padding:12px;display:flex}.validation-result>div{flex:1;min-width:0}.validation-result strong{font-size:11px}.validation-result>div>div{flex-wrap:wrap;gap:12px;margin:7px 0;display:flex}.validation-result span{color:#506660;font-size:9px}.validation-result small{color:#61716d;text-overflow:ellipsis;white-space:nowrap;font-size:9px;display:block;overflow:hidden}.confirm-import{background:#087c69;border-color:#087c69}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.source-summary{grid-template-columns:repeat(3,1fr)}.delete-btn,.danger-btn{border-radius:4px;align-items:center;gap:5px;height:28px;padding:0 9px;font-size:10px;display:inline-flex}.delete-btn{color:#c51f3d;background:#fff;border:1px solid #efc4ca}.delete-btn:hover{background:#fff0f2}.danger-btn{color:#fff;background:#c51f3d;border:1px solid #c51f3d}.delete-confirm{align-items:center;gap:6px;display:flex}.delete-confirm>span{color:#9b1c1c;font-size:10px}@media (width<=560px){.source-summary{grid-template-columns:1fr}}
