@import "https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500;600;700&display=swap";:root{color:#f5f5f7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;--primary:#0a84ff;--primary-hover:#409cff;--primary-light:#0a84ff29;--surface:#1c1c1ed1;--surface-solid:#1c1c1e;--surface-elevated:#2c2c2e;--surface-fill:#3a3a3c;--text:#f5f5f7;--muted:#ebebf599;--tertiary:#ebebf54d;--border:#545458a6;--black:#000;--green:#30d158;--green-bg:#30d15824;--green-border:#30d15857;--amber:#ff9f0a;--amber-bg:#ff9f0a24;--amber-border:#ff9f0a57;--red:#ff453a;--red-bg:#ff453a24;--red-border:#ff453a57;--violet:#bf5af2;--violet-bg:#bf5af224;--violet-border:#bf5af257;--shadow-sm:0 1px 2px #00000047;--shadow-md:0 6px 18px #00000057;--shadow-lg:0 14px 36px #0000006b;--shadow:var(--shadow-md);--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-full:9999px;--transition:.2s cubic-bezier(.25, .1, .25, 1);background:#000;font-family:Google Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#000;background-image:radial-gradient(circle at 10% 20%,#0a84ff26 0%,#0000 38%),radial-gradient(circle at 90% 80%,#30d15812 0%,#0000 38%),radial-gradient(circle,#bf5af20e 0%,#0000 60%);background-attachment:fixed;margin:0;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}main{width:min(1440px,100% - 48px);margin:0 auto;padding:24px 0 56px}.upload-panel{background:var(--surface);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px dashed var(--border);border-radius:var(--radius-lg);min-height:118px;box-shadow:var(--shadow);transition:var(--transition);align-items:center;gap:22px;padding:24px;display:flex}.upload-panel.is-dragging{border-color:var(--primary);background:var(--surface-elevated);box-shadow:0 0 0 4px #0a84ff24, var(--shadow-lg);transform:translateY(-2px)}.upload-panel.has-file{border-style:solid}.upload-copy{flex:1;align-items:center;gap:16px;min-width:0;display:flex}.upload-icon{background:var(--primary-light);width:54px;height:54px;color:var(--primary);border-radius:16px;place-items:center;font-size:27px;font-weight:300;display:grid}.upload-copy h2{overflow-wrap:anywhere;margin:0 0 4px;font-size:17px}.upload-copy p{color:var(--muted);margin:0;font-size:13px}.button-primary,.button-load-more{border-radius:var(--radius-full);background:var(--primary);color:#fff;transition:var(--transition);border:0;padding:11px 20px;font-weight:650;box-shadow:0 4px 14px #0a84ff3d}.button-primary:hover,.button-load-more:hover{background:var(--primary-hover);transform:translateY(-1px)}.button-primary:disabled{opacity:.55;cursor:wait;transform:none}.error-banner{background:var(--red-bg);color:var(--red);border:1px solid var(--red-border);border-radius:13px;margin-top:14px;padding:13px 16px;font-weight:600}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0;display:grid}.summary-card{-webkit-backdrop-filter:blur(20px)saturate(180%);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);width:100%;box-shadow:var(--shadow-sm);min-height:116px;color:var(--text);text-align:left;transition:var(--transition);flex-direction:column;padding:18px;display:flex}button.summary-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.summary-card.is-active{border-color:currentColor;box-shadow:0 0 0 1px}.summary-card p{color:var(--muted);margin:0;font-size:12px;font-weight:650}.summary-card strong{letter-spacing:-1px;margin-top:auto;font-size:30px;line-height:1.1}.summary-card span{color:var(--muted);margin-top:4px;font-size:11px}.summary-card--success strong{color:var(--green)}.summary-card--warning strong{color:var(--amber)}.summary-card--danger strong{color:var(--red)}.summary-card--success.is-active{color:var(--green);background:#30d1581a}.summary-card--warning.is-active{color:var(--amber);background:#ff9f0a1a}.summary-card--danger.is-active{color:var(--red);background:#ff453a1a}.issues-panel{border:1px solid var(--amber-border);background:#ff9f0a1a;border-radius:18px;margin-bottom:18px;overflow:hidden}.issues-heading{text-align:left;width:100%;color:var(--amber);background:0 0;border:0;justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.issues-heading span:first-child{flex-direction:column;gap:2px;display:flex}.issues-heading small{font-weight:400}.issues-list{border-top:1px solid var(--amber-border);background:#00000029}.issue-row{border-bottom:1px solid #ff9f0a2e;grid-template-columns:90px minmax(200px,1fr) minmax(140px,.8fr) minmax(240px,1.4fr);align-items:center;gap:12px;padding:12px 18px;font-size:12px;display:grid}.issue-row:last-child{border-bottom:0}.issue-row code{overflow-wrap:anywhere;color:#ffd28a}.issue-row strong{color:#ffc766}.issue-row-number{color:var(--muted)}.controls-panel{background:var(--surface);-webkit-backdrop-filter:blur(20px)saturate(180%);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:minmax(280px,1fr) 220px 135px;align-items:end;gap:10px;padding:14px;display:grid}.search-field{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-elevated);align-items:center;gap:10px;height:44px;padding:0 14px;display:flex}.search-field span{color:var(--muted);font-size:22px;transform:rotate(-20deg)}.search-field input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.search-field:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px #0a84ff24}.select-field,.threshold-field{flex-direction:column;gap:5px;display:flex}.select-field span,.threshold-field span{color:var(--muted);font-size:11px;font-weight:650}.select-field select,.threshold-field input{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-elevated);height:44px;color:var(--text);outline:0;padding:0 12px}.select-field select:focus,.threshold-field input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #0a84ff24}.threshold-field input{width:100%}.status-tabs{gap:7px;padding:15px 0 8px;display:flex;overflow-x:auto}.status-tabs button{border:1px solid var(--border);color:var(--muted);border-radius:var(--radius-full);white-space:nowrap;transition:var(--transition);background:#2c2c2ec7;align-items:center;gap:8px;padding:8px 13px;font-size:12px;font-weight:600;display:flex}.status-tabs button span{background:var(--surface-fill);min-width:23px;height:21px;color:var(--text);border-radius:99px;place-items:center;padding:0 5px;display:grid}.status-tabs button.active{color:#1c1c1e;background:#f5f5f7;border-color:#f5f5f7}.status-tabs button.active span{color:#1c1c1e;background:#d1d1d6}.status-tabs button:not(.active):hover{background:var(--surface-fill);color:var(--text);border-color:#8e8e93cc}.review-section{width:100%;margin:16px 0 0}.review-section .status-tabs{padding:0 0 9px}.results-heading{justify-content:space-between;align-items:end;margin:17px 2px 12px;display:flex}.results-heading h2{margin:0;font-size:19px}.results-heading p{color:var(--muted);margin:3px 0 0;font-size:12px}.dataset-summary{color:var(--muted);justify-content:flex-end;align-items:center;gap:14px;font-size:11px;display:flex}.dataset-summary span{white-space:nowrap}.dataset-summary b{color:var(--text);margin-right:2px;font-size:13px}.groups-list{flex-direction:column;gap:10px;display:flex}.product-group{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition);position:relative;overflow:hidden}.product-group:hover{box-shadow:var(--shadow-md)}.product-group:before{content:"";z-index:1;background:#636366;width:7px;position:absolute;inset:0 auto 0 0}.product-group--issues{border-color:var(--violet-border)}.product-group--allOut{border-color:var(--red-border)}.product-group--attention{border-color:var(--amber-border)}.product-group--ignored{opacity:.65}.product-group--issues:before{background:var(--violet)}.product-group--allOut:before{background:var(--red)}.product-group--attention:before{background:var(--amber)}.product-group--healthy:before{background:var(--green)}.group-summary{width:100%;min-height:126px;color:var(--text);text-align:left;background:0 0;border:0;grid-template-columns:minmax(270px,.9fr) minmax(420px,1.7fr) minmax(220px,.7fr);align-items:stretch;gap:0;padding:0 0 0 7px;display:grid}.group-summary:hover{background:#ffffff09}.group-primary{grid-template-columns:24px minmax(0,1fr);align-content:center;gap:12px;padding:18px 20px;display:grid}.expand-icon{color:var(--muted);font-family:Arial,sans-serif;font-size:27px;transition:all .15s}.expand-icon.is-open{transform:rotate(90deg)}.group-title-block{flex-direction:column;gap:3px;min-width:0;display:flex}.group-name{overflow-wrap:anywhere;font-size:15px;font-weight:750}.group-code{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.group-tags{flex-wrap:wrap;gap:5px;margin-top:2px;display:flex}.group-tags span{border-radius:var(--radius-full);background:var(--surface-fill);color:var(--muted);padding:2px 7px;font-size:10px;font-weight:650}.group-metrics{color:var(--muted);grid-template-columns:1fr;gap:7px;padding:0;font-size:11px;display:grid}.group-metrics span{white-space:nowrap;justify-content:flex-end;align-items:baseline;gap:7px;display:flex}.group-metrics b{min-width:28px;color:var(--text);text-align:right;font-size:14px}.group-metrics .metric-danger b{color:var(--red)}.group-metrics .metric-warning b{color:var(--amber)}.group-metrics .metric-issue b{color:var(--violet)}.group-alert{flex-direction:column;align-items:flex-end;gap:5px;padding:0;display:flex}.group-alert-text{color:var(--muted);text-align:right;white-space:nowrap;font-size:10px}.group-overview{background:#2c2c2ead;flex-direction:column;justify-content:center;gap:14px;padding:18px 20px;display:flex}.variant-preview{border-left:1px solid var(--border);border-right:1px solid var(--border);flex-wrap:wrap;align-content:center;gap:6px;min-width:0;padding:18px 20px;display:flex}.variant-chip{border:1px solid var(--border);border-radius:var(--radius-sm);max-width:190px;min-height:31px;color:var(--muted);background:var(--surface-elevated);align-items:center;gap:7px;padding:6px 9px;font-size:10px;display:inline-flex}.variant-chip>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.variant-chip b{margin-left:auto;font-size:12px}.variant-chip--out{color:var(--red);background:var(--red-bg);border-color:var(--red-border)}.variant-chip--low{color:var(--amber);background:var(--amber-bg);border-color:var(--amber-border)}.variant-chip--healthy{color:var(--green);background:var(--green-bg);border-color:var(--green-border)}.variant-chip--invalid{color:var(--violet);background:var(--violet-bg);border-color:var(--violet-border)}.group-status,.item-status{border:1px solid var(--border);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.group-status{min-width:98px;padding:7px 10px}.status-healthy,.item-status--healthy{background:var(--green-bg);color:var(--green);border-color:var(--green-border)}.status-attention,.item-status--low{background:var(--amber-bg);color:var(--amber);border-color:var(--amber-border)}.status-allOut,.item-status--out{background:var(--red-bg);color:var(--red);border-color:var(--red-border)}.status-issues,.item-status--invalid{background:var(--violet-bg);color:var(--violet);border-color:var(--violet-border)}.status-ignored{background:var(--surface-fill);color:var(--muted)}.group-details{border-top:1px solid var(--border)}.group-actions{background:var(--surface-elevated);min-height:44px;color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:7px 18px;font-size:11px;display:flex}.button-quiet,.button-restore{border:0;border-radius:999px;padding:6px 11px;font-size:11px;font-weight:700}.button-quiet{background:var(--surface-fill);color:var(--muted)}.button-restore{background:var(--green-bg);color:var(--green)}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12px}th{background:var(--surface-elevated);color:var(--muted);letter-spacing:.02em;text-align:left;font-size:10px}th,td{border-bottom:1px solid var(--border);padding:11px 16px}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background-color:#ffffff0b}td code{color:#d1d1d6;overflow-wrap:anywhere;font-size:11px}.number-cell{text-align:right;font-variant-numeric:tabular-nums}.number-available{font-weight:750}.item-status{min-width:76px;padding:5px 9px}.row-invalid{background:#bf5af20e}.row-out{background:#ff453a0e}.row-low{background:#ff9f0a0e}.empty-state{text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius-lg);padding:70px 20px}.empty-state h3{color:var(--text);margin:0 0 5px}.empty-state p{margin:0}.button-load-more{margin:20px auto 0;display:block}@media (width<=1100px){.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.controls-panel{grid-template-columns:1fr 180px 120px}.group-summary{grid-template-columns:minmax(260px,1fr) minmax(210px,.65fr)}.group-primary{grid-area:1/1}.group-overview{grid-area:1/2}.variant-preview{border:0;border-top:1px solid var(--border);grid-area:2/1/auto/-1}}@media (width<=720px){main{width:min(100% - 24px,1440px)}.upload-panel{flex-direction:column;align-items:stretch}.button-primary{width:100%}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.controls-panel{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.group-summary{grid-template-columns:1fr}.group-primary{grid-area:1/1;padding:15px 14px}.variant-preview{border:0;border-top:1px solid var(--border);grid-area:2/1;padding:14px}.group-overview{border-top:1px solid var(--border);grid-area:3/1;padding:14px}.group-metrics{grid-template-columns:repeat(3,auto)}.group-metrics span{justify-content:flex-start}.group-alert{align-items:flex-start}.group-alert-text{text-align:left;white-space:normal}.variant-chip{max-width:150px}.results-heading{flex-direction:column;align-items:flex-start;gap:10px}.dataset-summary{flex-wrap:wrap;justify-content:flex-start}.issue-row{grid-template-columns:80px 1fr}.issue-row strong{grid-column:1/-1}}@media (width<=440px){.summary-grid,.controls-panel{grid-template-columns:1fr}.search-field{grid-column:auto}.summary-card{min-height:100px}}
