:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f3e6;--panel:#fffdf7;--panel2:#f1ecdc;--line:#dfdccf;--grid:#ece8da;--txt:#051a13;--muted:#4a5f51;--accent:#f7d808;--accent-ink:#051a13;--good:#1d7a3a;--bad:#c0362c;--s1:#4f7a1e;--s2:#f08a3e;--s3:#b04e86;--s4:#c9a400;--s5:#2f72c4;--s6:#00978a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#051a13;--panel:#0e2a1f;--panel2:#133427;--line:#1f4234;--grid:#183a2c;--txt:#f7f3e6;--muted:#a8b789;--good:#5fd08a;--bad:#ff7b70;--s1:#78a236;--s2:#b05a24;--s3:#c2609a;--s4:#ac8b00;--s5:#4f8bd6;--s6:#1dae86}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#051a13;--panel:#0e2a1f;--panel2:#133427;--line:#1f4234;--grid:#183a2c;--txt:#f7f3e6;--muted:#a8b789;--good:#5fd08a;--bad:#ff7b70;--s1:#78a236;--s2:#b05a24;--s3:#c2609a;--s4:#ac8b00;--s5:#4f8bd6;--s6:#1dae86}*{box-sizing:border-box}body{background:var(--bg);color:var(--txt);margin:0;font:14px/1.45 DM Sans,system-ui,sans-serif}h1,h2{margin:0;font-family:Bricolage Grotesque,system-ui,sans-serif}h2{font-size:17px;font-weight:700}a{color:inherit}.muted{color:var(--muted);margin:2px 0 0}.small{font-size:12px}.spacer{flex:1}.neg{color:var(--bad)}.pos{color:var(--txt)}.error{color:var(--bad)}.success{color:var(--good)}button{font:inherit;cursor:pointer;border:1px solid var(--line);background:var(--panel);color:var(--txt);border-radius:10px;padding:7px 12px;font-size:13px}button:hover:not(:disabled){border-color:var(--muted)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}button.ghost{background:0 0}button.small{padding:4px 9px;font-size:12px}button.danger:hover{border-color:var(--bad);color:var(--bad)}.seg{border:1px solid var(--line);background:var(--panel);border-radius:10px;display:inline-flex;overflow:hidden}.seg button{white-space:nowrap;background:0 0;border:0;border-radius:0}.seg button.active{background:var(--txt);color:var(--bg)}.splash{color:var(--muted);padding:48px}.login{place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:20px;justify-items:center;gap:16px;width:100%;max-width:380px;padding:36px 32px;display:grid}.login-card img{border-radius:14px}.login-form{gap:10px;width:100%;display:grid}header{z-index:20;background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);align-items:center;gap:16px;padding:10px 20px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:8px;font-family:Bricolage Grotesque,system-ui,sans-serif;font-size:16px;font-weight:800;display:flex}.brand img{border-radius:7px}.brand-sub{color:var(--muted);font-weight:500}.tabs{gap:2px;display:flex;overflow-x:auto}.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0}.tabs button.active{background:var(--panel2);color:var(--txt);font-weight:700}.user{color:var(--muted);font-size:12px}.demo-banner,.error-banner{border-radius:12px;margin:12px 20px 0;padding:10px 14px;font-size:13px}.demo-banner{background:color-mix(in srgb, var(--accent) 30%, var(--panel));border:1px solid var(--accent)}.error-banner{border:1px solid var(--bad);color:var(--bad)}.toolbar{flex-wrap:wrap;align-items:center;gap:12px 20px;padding:16px 20px 0;display:flex}.toolbar .seg{max-width:100%;overflow-x:auto}.check{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}main{max-width:1280px;padding:16px 20px 48px}.page{gap:16px;display:grid}.tiles{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.tile{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:14px 16px}.tile.hero{background:var(--txt);color:var(--bg);border-color:var(--txt);grid-column:span 2}.tile-label{color:var(--muted);font-size:13px}.tile.hero .tile-label,.tile.hero .tile-hint{color:color-mix(in srgb, var(--bg) 75%, var(--txt))}.tile-value{letter-spacing:-.01em;margin-top:4px;font-size:26px;font-weight:700}.tile.hero .tile-value{font-size:48px;line-height:1.1}.tile-hint{color:var(--muted);margin-top:4px;font-size:12px}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;min-width:0;padding:16px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.empty{color:var(--muted);margin:8px 0}.chart{width:100%;position:relative}.chart svg{display:block;overflow:visible}.chart .grid{stroke:var(--grid);stroke-width:1px}.chart .baseline{stroke:var(--line);stroke-width:1px}.chart .axis{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.chart .hit{fill:#0000}.chart .band.hovered .hit{fill:var(--txt);fill-opacity:.04}.tooltip{pointer-events:none;background:var(--panel);border:1px solid var(--line);border-radius:10px;width:200px;padding:8px 10px;font-size:12px;position:absolute;box-shadow:0 6px 20px #0000001f}.tooltip-title{margin-bottom:4px;font-weight:700}.tooltip-row{grid-template-columns:10px 1fr auto;align-items:center;gap:6px;display:grid}.tooltip-row.total{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.legend{color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin-bottom:8px;font-size:12px;display:flex}.legend>span{align-items:center;gap:6px;display:inline-flex}.swatch{border-radius:3px;width:10px;height:10px;display:inline-block}.table-wrap{margin:0 -16px;padding:0 16px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;padding:6px 10px;font-size:12px;font-weight:500}td{border-bottom:1px solid var(--grid);padding:8px 10px}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}table.clickable tbody tr{cursor:pointer}table.clickable tbody tr:hover,tr.selected{background:var(--panel2)}.pnl tr.section td{border-bottom:0;padding-top:16px;font-weight:700}.pnl tr.total td{border-top:1px solid var(--line);font-weight:700}.pnl tr.result td{border-top:2px solid var(--txt);font-size:14px;font-weight:800}.pnl td:first-child{white-space:nowrap}td.actions{text-align:right;white-space:nowrap}.app-name{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.app-name img,.app-icon-placeholder{background:var(--panel2);border-radius:6px;flex:none;width:24px;height:24px}.badge{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:1px 7px;font-size:11px}.badge.unmapped{border-color:var(--bad);color:var(--bad)}.detail-head{align-items:center;gap:16px;font-size:16px;font-weight:700;display:flex}.detail-head a{color:var(--muted);font-size:13px;font-weight:400}.form{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px;display:grid}.form label,.sync-controls label{color:var(--muted);gap:4px;font-size:12px;display:grid}input,select{font:inherit;color:var(--txt);background:var(--bg);border:1px solid var(--line);border-radius:8px;min-width:0;padding:7px 9px;font-size:14px}.form-actions{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;display:flex}.sync-controls{align-items:flex-end;gap:8px;display:flex}.sync-controls input{width:80px}.sources{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:12px 0;display:grid}.source{border:1px solid var(--line);border-radius:12px;align-content:start;justify-items:start;gap:6px;padding:12px;display:grid}.source-head{justify-content:space-between;gap:8px;width:100%;display:flex}.status{border:1px solid;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.status.good{color:var(--good)}.status.bad{color:var(--bad)}.status.idle{color:var(--muted)}@media (width<=760px){header{flex-wrap:wrap;padding:10px 16px}.tabs{order:3;width:100%}.user{display:none}.toolbar,main{padding-left:16px;padding-right:16px}.demo-banner,.error-banner{margin:12px 16px 0}.tile.hero{grid-column:1/-1}.tile.hero .tile-value{font-size:40px}}.lemon-bg{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.lemon-bg-item{opacity:.16;transform:rotate(var(--rotate));animation:ease-in-out infinite lemon-float;display:block;position:absolute}.lemon-bg-item svg{width:100%;height:auto;display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .lemon-bg-item{opacity:.1}}:root[data-theme=dark] .lemon-bg-item{opacity:.1}@keyframes lemon-float{0%,to{transform:translateY(0) rotate(var(--rotate))}50%{transform:translateY(-14px) rotate(calc(var(--rotate) + 8deg))}}.shell,.login{position:relative}header,.toolbar,main,.demo-banner,.error-banner,.login-card{z-index:1;position:relative}header{z-index:20}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes grow-y{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.page>*,.tiles>.tile{animation:.45s cubic-bezier(.2,.7,.2,1) both fade-up}.page>:nth-child(2){animation-delay:60ms}.page>:nth-child(3){animation-delay:.12s}.page>:nth-child(4){animation-delay:.18s}.page>:nth-child(5){animation-delay:.24s}.tiles>.tile:nth-child(2){animation-delay:40ms}.tiles>.tile:nth-child(3){animation-delay:80ms}.tiles>.tile:nth-child(4){animation-delay:.12s}.tiles>.tile:nth-child(5){animation-delay:.16s}.tiles>.tile:nth-child(6){animation-delay:.2s}.tile,.card{transition:transform .2s,box-shadow .2s}.tile:hover{transform:translateY(-2px);box-shadow:0 8px 24px #051a1314}.chart .bar{transform-box:fill-box;transform-origin:bottom;animation:.6s cubic-bezier(.2,.7,.2,1) both grow-y}.tabs button,.seg button{transition:background .2s,color .2s}.detail{animation:.35s both fade-up}@media (prefers-reduced-motion:reduce){.lemon-bg-item,.page>*,.tiles>.tile,.chart .bar,.barlist-row,.barlist-bar,.detail{animation:none!important}}.delta{white-space:nowrap;vertical-align:1px;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:700;display:inline-block}.delta.good{color:var(--good);background:color-mix(in srgb, var(--good) 12%, transparent)}.delta.bad{color:var(--bad);background:color-mix(in srgb, var(--bad) 12%, transparent)}.delta.neutral{color:var(--muted);background:color-mix(in srgb, var(--muted) 12%, transparent)}.tile.hero .delta.good,.tile.hero .delta.bad,.tile.hero .delta.neutral{background:color-mix(in srgb, var(--bg) 18%, transparent);color:var(--bg)}.barlist{gap:8px;display:grid}.barlist-row{grid-template-columns:minmax(140px,240px) 1fr auto;align-items:center;gap:12px;animation:.4s both fade-up;display:grid}.barlist-label{min-width:0;overflow:hidden}.barlist-label .app-name-text{text-overflow:ellipsis;overflow:hidden}.barlist-track{background:var(--panel2);border-radius:4px;height:14px;position:relative}.barlist-bar{background:var(--s1);transform-origin:0;border-radius:0 4px 4px 0;animation:.6s cubic-bezier(.2,.7,.2,1) both grow-x;position:absolute;top:0;bottom:0;left:0}.barlist.diverging .barlist-track:after{content:"";background:var(--line);width:1px;position:absolute;top:-3px;bottom:-3px;left:50%}.barlist.diverging .barlist-bar{left:50%}.barlist.diverging .barlist-bar.neg{background:var(--neg-bar);transform-origin:100%;border-radius:4px 0 0 4px;left:auto;right:50%}.barlist-value{min-width:84px;font-weight:700}:root{--neg-bar:#c8463b}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--neg-bar:#e06a5e}}:root[data-theme=dark]{--neg-bar:#e06a5e}.toolbar-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.toolbar-card .seg{max-width:100%;overflow-x:auto}td.strong{font-weight:700}tr.sub td{border-bottom-style:dashed;padding-left:18px;font-size:12px}.detail{gap:16px;display:grid}.detail-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;display:grid}.detail-grid .card{border-style:dashed}.table-wrap table{min-width:640px}.table-wrap table.pnl{min-width:720px}@media (width<=760px){.barlist-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value""track track";row-gap:4px}.barlist-label{grid-area:label}.barlist-value{grid-area:value;min-width:0}.barlist-track{grid-area:track}.detail-grid{grid-template-columns:1fr}.detail-head{flex-wrap:wrap;gap:8px 12px}.card{padding:14px}.table-wrap{margin:0 -14px;padding:0 14px}.tile-value{font-size:22px}.lemon-bg-item{opacity:.1}}@media (width<=420px){.tiles{grid-template-columns:1fr 1fr}.tile{padding:12px}.brand-sub{display:none}}@media (width<=760px){.toolbar .seg,.toolbar-card .seg{border-radius:12px;flex-wrap:wrap;display:flex;overflow:visible}.toolbar .seg button,.toolbar-card .seg button{flex:auto}}.info{width:15px;height:15px;color:var(--muted);cursor:help;vertical-align:1px;opacity:.8;border:1px solid;border-radius:50%;place-items:center;margin-left:3px;font:italic 700 10px/1 Georgia,serif;display:inline-grid;position:relative}.info:hover,.info:focus-visible{opacity:1;outline:none}.info:after{content:attr(data-tip);z-index:30;background:var(--txt);width:max-content;max-width:260px;color:var(--bg);text-align:left;white-space:normal;opacity:0;pointer-events:none;border-radius:10px;padding:8px 10px;font:400 12px/1.4 DM Sans,system-ui,sans-serif;transition:opacity .15s,transform .15s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,-4px);box-shadow:0 8px 24px #0000002e}.info-left:after{left:-6px;transform:translateY(-4px)}.info-right:after{left:auto;right:-6px;transform:translateY(-4px)}.info:hover:after,.info:focus:after{opacity:1;transform:translate(-50%)}.info-left:hover:after,.info-left:focus:after,.info-right:hover:after,.info-right:focus:after{transform:none}.tile.hero .info{color:var(--bg)}.tile.hero .info:after{background:var(--bg);color:var(--txt)}.table-wrap{padding-bottom:4px}th .info:after{font-weight:400}@media (width<=760px){.info:after{max-width:220px}}.theme-toggle{border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:inline-grid}.theme-toggle svg{width:17px;height:17px}.check-field{grid-column:1/-1}.check-field .check{color:var(--txt);font-size:14px}.check input{accent-color:var(--accent);width:16px;height:16px}.ab-links{flex-wrap:wrap;gap:8px 16px;display:flex}.ab-links a{font-weight:600}.tile-hint .info{margin-left:2px}.table-wrap table.compact{min-width:420px}.flag{font-size:15px}.share-bar{background:linear-gradient(to right, var(--s1) var(--w), var(--panel2) var(--w));vertical-align:middle;border-radius:3px;width:36px;height:6px;margin-right:6px;display:inline-block}.product-cell{gap:2px;display:grid}.product-cell .small{padding-left:32px}tr.muted-row td{color:var(--muted)}.toolbar-card select{min-width:220px}.alerts,.alerts .theme-toggle{position:relative}.alerts-count{background:var(--muted);min-width:17px;height:17px;color:var(--bg);border-radius:999px;padding:0 4px;font-size:10px;font-weight:700;line-height:17px;position:absolute;top:-3px;right:-3px}.alerts-count.bad{background:var(--bad);color:#fff}.alerts-panel{z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:14px;width:min(360px,100vw - 32px);max-height:70vh;padding:8px;animation:.2s both fade-up;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 12px 32px #00000029}.alerts-head{padding:6px 8px 8px;font-weight:700}.alerts-empty{padding:4px 8px 8px}.alert-item{text-align:left;border:0;border-left:3px solid var(--muted);background:0 0;border-radius:8px;gap:2px;width:100%;margin-bottom:4px;padding:8px 10px;display:grid}.alert-item:hover{background:var(--panel2)}.alert-item span{color:var(--muted);font-size:12px}.alert-item.level-bad{border-left-color:var(--bad)}.alert-item.level-warn{border-left-color:var(--s4)}.alert-item.level-info{border-left-color:var(--s5)}@media (width<=760px){.alerts-panel{width:auto;position:fixed;top:60px;left:16px;right:16px}}.mini-apps{flex-wrap:wrap;gap:4px 12px;display:flex}.mini-apps .app-name-text{text-overflow:ellipsis;max-width:140px;overflow:hidden}.review-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.reviews{gap:12px;display:grid}.review{background:var(--panel);border:1px solid var(--line);border-radius:16px;gap:6px;padding:14px 16px;display:grid}.review.low{border-left:4px solid var(--bad)}.review-head{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.review h3{margin:4px 0 0;font-size:15px}.review-body{white-space:pre-wrap;margin:0}.stars{color:var(--s4);letter-spacing:1px}.stars-off{color:var(--line)}.review-response{background:var(--panel2);border-radius:10px;margin-top:6px;padding:10px 12px}.review-response p{white-space:pre-wrap;margin:4px 0 0}.review-reply textarea{width:100%;font:inherit;color:var(--txt);background:var(--bg);border:1px solid var(--line);resize:vertical;border-radius:10px;padding:10px}.review-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:6px;display:flex}button.primary.small{padding:5px 10px}.chart .marker line{stroke:var(--muted);stroke-width:1px;stroke-opacity:.6}.chart .marker text{fill:var(--muted);font-size:10px}.brand{white-space:nowrap;flex:none}@media (width<=1180px){.brand-sub{display:none}.tabs button{padding:7px 9px}}.sources-list{gap:10px;display:grid}.source-row{grid-template-columns:minmax(120px,1fr) 2fr auto auto;align-items:center;gap:10px;display:grid}.source-track{background:var(--panel2);border-radius:4px;height:10px;overflow:hidden}.source-track span{background:var(--s1);transform-origin:0;border-radius:0 4px 4px 0;height:100%;animation:.6s cubic-bezier(.2,.7,.2,1) both grow-x;display:block}@media (width<=760px){.source-row{grid-template-columns:1fr auto auto}.source-track{order:4;grid-column:1/-1}}:root{--gutter:max(20px, calc((100vw - 1640px) / 2))}header,.toolbar,main{padding-left:var(--gutter);padding-right:var(--gutter)}main{max-width:none}.demo-banner,.error-banner{margin-left:var(--gutter);margin-right:var(--gutter)}@media (width<=760px){:root{--gutter:16px}}.page-guide{border:1px dashed var(--line);background:color-mix(in srgb, var(--panel) 70%, transparent);border-radius:14px;padding:10px 14px}.page-guide summary{cursor:pointer;color:var(--muted);align-items:center;gap:8px;font-weight:600;list-style:none;display:flex}.page-guide summary::-webkit-details-marker{display:none}.page-guide summary:before{content:"i";border:1px solid;border-radius:50%;place-items:center;width:18px;height:18px;font:italic 700 11px/1 Georgia,serif;display:inline-grid}.page-guide[open] summary{color:var(--txt);margin-bottom:6px}.page-guide-body{max-width:900px;font-size:13px;line-height:1.55}.page-guide-body p{margin:0 0 6px}.page-guide-body ul{gap:4px;margin:0;padding-left:18px;display:grid}.pnl td .info:after{max-width:300px}.info:after{content:none}.info:hover:after,.info:focus:after{content:attr(data-tip);animation:.15s both tip-in}@keyframes tip-in{0%{opacity:0}to{opacity:1}}
