:root{font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;color:#191c2a;background:#f3f3f6;font-synthesis:none;--ink:#191c2a;--muted:#666b7c;--line:#d8d9e1;--panel:#fff;--primary:#37327e;--primary-dark:#27245f;--primary-soft:#ecebff;--red:#b42335;--red-soft:#fff0f1;--green:#18734a;--green-soft:#eaf8f0;--amber:#9a5b07;--amber-soft:#fff6df;--blue:#285a9f;--blue-soft:#edf5ff;--shadow:0 12px 30px rgba(26,28,51,.07)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#f3f3f6;color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid rgba(55,50,126,.25);outline-offset:2px}.mono{font-family:Cascadia Code,SFMono-Regular,Consolas,monospace}.shell{max-width:1440px;margin:0 auto;padding:0 28px}.topbar{height:66px;border-bottom:1px solid var(--line);background:#ffffffeb;position:sticky;top:0;z-index:30;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar .shell{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:11px;font-weight:750;letter-spacing:-.02em}.brand-mark{width:32px;height:32px;border-radius:7px;background:var(--primary-dark);display:grid;place-items:center;color:#fff;font-family:monospace;font-size:13px}.brand small{display:block;font-weight:500;color:var(--muted);font-size:11px;letter-spacing:.02em}.top-actions{display:flex;align-items:center;gap:16px}.privacy-inline{font-size:13px;color:var(--green);display:flex;align-items:center;gap:6px}.ghost-btn,.link-btn{border:0;background:transparent;color:var(--primary);font-weight:650;padding:8px}.intro{padding:34px 0 22px;display:flex;justify-content:space-between;gap:32px;align-items:flex-end}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--primary)}h1{margin:8px 0;font-size:clamp(28px,3.4vw,47px);line-height:1.08;letter-spacing:-.045em;max-width:840px}.lead{margin:0;color:var(--muted);font-size:16px;max-width:760px;line-height:1.65}.intro-note{min-width:250px;border-left:2px solid var(--primary);padding-left:16px;color:var(--muted);font-size:13px;line-height:1.55}.workspace{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.workspace-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);background:#fafafd}.segmented{display:inline-flex;border:1px solid #c9cad5;border-radius:6px;padding:3px;background:#f1f1f5}.segment{border:0;background:transparent;color:#606477;font-weight:700;padding:8px 14px;border-radius:4px}.segment.active{background:#fff;color:var(--primary-dark);box-shadow:0 1px 4px #0000001f}.sample-btn{border:1px solid #bbb8e8;background:var(--primary-soft);color:var(--primary-dark);font-weight:750;border-radius:6px;padding:9px 13px}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.upload-panel{padding:20px}.upload-panel+.upload-panel{border-left:1px solid var(--line)}.upload-label{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.upload-label strong{font-size:14px}.upload-label span{font-size:12px;color:var(--muted)}.dropzone{min-height:134px;border:1.5px dashed #aaa8bd;background:#fafafd;border-radius:7px;display:grid;place-items:center;text-align:center;padding:20px;transition:.18s}.dropzone.dragging{border-color:var(--primary);background:var(--primary-soft)}.dropzone.loaded{border-style:solid;border-color:#a7cdb8;background:#f6fbf8}.drop-icon{font-size:22px;color:var(--primary);margin-bottom:4px}.drop-title{font-weight:750;font-size:14px}.drop-help{color:var(--muted);font-size:12px;margin-top:5px}.drop-files{font-size:12px;color:var(--green);margin-top:7px;word-break:break-all}.hidden{display:none!important}.workspace-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-top:1px solid var(--line);background:#fafafd}.advanced{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.advanced summary{font-size:13px;font-weight:700;color:var(--primary);cursor:pointer}.advanced-body{display:inline-flex;gap:8px;align-items:center}.field{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.field select,.field input{border:1px solid #c9cad5;background:#fff;border-radius:5px;padding:7px;color:var(--ink)}.primary-btn{border:1px solid var(--primary-dark);background:var(--primary-dark);color:#fff;font-weight:750;border-radius:6px;padding:10px 18px;box-shadow:0 3px 8px #27245f2e}.primary-btn:disabled{opacity:.4;cursor:not-allowed}.error-banner,.warning-banner{margin:14px 18px 0;padding:11px 13px;border-radius:6px;font-size:13px;line-height:1.45}.error-banner{background:var(--red-soft);color:var(--red);border:1px solid #efbbc1}.warning-banner{background:var(--amber-soft);color:var(--amber);border:1px solid #e7c77d}.results{margin-top:22px}.verdict{display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:8px;padding:20px 22px;color:#fff}.verdict.regression{background:#6d2532}.verdict.clear{background:#176443}.verdict.attention{background:#765010}.verdict h2{margin:0 0 5px;font-size:22px}.verdict p{margin:0;color:#ffffffd1;font-size:13px}.verdict-meta{text-align:right;font-size:12px;line-height:1.6;color:#ffffffd9}.metrics{display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border:1px solid var(--line);border-radius:8px;margin-top:12px}.metric{padding:15px 17px;border-right:1px solid var(--line)}.metric:last-child{border-right:0}.metric-value{font-size:24px;font-weight:800;letter-spacing:-.04em}.metric-label{font-size:12px;color:var(--muted);margin-top:2px}.metric.danger .metric-value{color:var(--red)}.metric.good .metric-value{color:var(--green)}.metric.warn .metric-value{color:var(--amber)}.results-grid{display:grid;grid-template-columns:310px minmax(0,1fr);gap:14px;margin-top:14px}.side-panel,.changes-panel{background:#fff;border:1px solid var(--line);border-radius:8px}.panel-head{padding:14px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-head h3{font-size:14px;margin:0}.panel-head span{font-size:11px;color:var(--muted)}.priorities{padding:8px}.priority-item{width:100%;border:0;background:transparent;text-align:left;padding:11px 9px;border-bottom:1px solid #ececf1}.priority-item:last-child{border-bottom:0}.priority-type{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--red)}.priority-name{font-size:12px;font-weight:700;margin-top:4px;word-break:break-word}.priority-note{font-size:11px;color:var(--muted);margin-top:3px}.toolbar{padding:10px 12px;border-bottom:1px solid var(--line);display:flex;gap:8px;flex-wrap:wrap}.search{min-width:210px;flex:1;border:1px solid #c9cad5;border-radius:5px;padding:8px 10px}.toolbar select{border:1px solid #c9cad5;border-radius:5px;padding:8px;background:#fff}.toggle-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);padding:0 4px}.export-wrap{position:relative}.export-btn{border:1px solid #b9b6e3;background:#f5f4ff;color:var(--primary-dark);border-radius:5px;padding:8px 10px;font-weight:700}.export-menu{position:absolute;right:0;top:40px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:6px;padding:5px;z-index:10;width:180px}.export-menu button{display:block;width:100%;text-align:left;border:0;background:#fff;padding:9px;border-radius:4px}.export-menu button:hover{background:#f4f3fb}.table-wrap{overflow:auto;max-height:590px}.changes-table{width:100%;border-collapse:collapse;font-size:12px}.changes-table th{position:sticky;top:0;background:#f8f8fb;z-index:2;text-align:left;color:#686c7b;font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:10px 12px;border-bottom:1px solid var(--line)}.changes-table td{padding:11px 12px;border-bottom:1px solid #ececf1;vertical-align:middle}.changes-table tbody tr{cursor:pointer}.changes-table tbody tr:hover{background:#faf9ff}.change-badge,.status-badge{display:inline-flex;align-items:center;border-radius:4px;padding:4px 6px;font-size:10px;font-weight:800;white-space:nowrap}.change-badge.danger,.status-badge.failed,.status-badge.error{background:var(--red-soft);color:var(--red)}.change-badge.good,.status-badge.passed{background:var(--green-soft);color:var(--green)}.change-badge.warn,.status-badge.skipped{background:var(--amber-soft);color:var(--amber)}.change-badge.info{background:var(--blue-soft);color:var(--blue)}.test-name{font-weight:700;max-width:320px;word-break:break-word}.test-meta{font-size:10px;color:var(--muted);margin-top:3px}.delta.up{color:var(--red);font-weight:700}.delta.down{color:var(--green);font-weight:700}.empty-results{padding:50px 20px;text-align:center;color:var(--muted)}.detail-drawer{position:fixed;inset:0;z-index:50;pointer-events:none}.detail-drawer.open{pointer-events:auto}.drawer-backdrop{position:absolute;inset:0;background:#14152159;opacity:0;transition:.2s}.detail-drawer.open .drawer-backdrop{opacity:1}.drawer{position:absolute;right:0;top:0;height:100%;width:min(620px,92vw);background:#fff;box-shadow:-15px 0 40px #00000026;transform:translate(100%);transition:.22s;overflow:auto}.detail-drawer.open .drawer{transform:none}.drawer-head{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 20px;display:flex;justify-content:space-between;z-index:2}.drawer-head h3{margin:0;font-size:16px}.close-btn{border:1px solid var(--line);background:#fff;border-radius:5px;width:34px;height:34px}.drawer-body{padding:20px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-card{border:1px solid var(--line);border-radius:6px;padding:13px}.detail-card h4{font-size:11px;text-transform:uppercase;color:var(--muted);margin:0 0 10px}.detail-line{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding:4px 0}.stack{background:#181a22;color:#e8e9ef;border-radius:6px;padding:13px;white-space:pre-wrap;word-break:break-word;font-size:11px;line-height:1.55;max-height:300px;overflow:auto}.content{padding:60px 0}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.content h2{font-size:24px;letter-spacing:-.03em}.content h3{font-size:15px}.content p,.content li{font-size:13px;line-height:1.7;color:var(--muted)}.faq{margin-top:52px;border-top:1px solid var(--line);padding-top:28px}.faq details{border-bottom:1px solid var(--line);padding:15px 0}.faq summary{font-weight:700;cursor:pointer}.faq p{max-width:850px}.footer{border-top:1px solid var(--line);padding:26px 0 40px;color:var(--muted);font-size:12px}.footer .shell{display:flex;justify-content:space-between;gap:20px}.mobile-cards{display:none}@media(max-width:900px){.shell{padding:0 16px}.intro{align-items:flex-start;flex-direction:column}.intro-note{min-width:0}.upload-grid{grid-template-columns:1fr}.upload-panel+.upload-panel{border-left:0;border-top:1px solid var(--line)}.metrics{grid-template-columns:repeat(3,1fr)}.metric:nth-child(3){border-right:0}.metric:nth-child(n+4){border-top:1px solid var(--line)}.results-grid{grid-template-columns:1fr}.side-panel{order:2}.content-grid{grid-template-columns:1fr}.advanced-body{display:flex;margin-top:10px}.workspace-actions{align-items:flex-start}.top-actions .privacy-inline{display:none}}@media(max-width:620px){.topbar{height:58px}.brand small{display:none}.intro{padding-top:24px}h1{font-size:31px}.workspace-head{align-items:stretch;flex-direction:column;gap:10px}.segmented{display:grid;grid-template-columns:1fr 1fr}.upload-panel{padding:14px}.dropzone{min-height:120px}.workspace-actions{flex-direction:column}.advanced{width:100%}.advanced-body{align-items:stretch;flex-direction:column}.primary-btn{width:100%}.verdict{align-items:flex-start;flex-direction:column}.verdict-meta{text-align:left}.metrics{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2n){border-right:0}.metric:nth-child(3){border-right:1px solid var(--line)}.metric:nth-child(n+3){border-top:1px solid var(--line)}.toolbar{align-items:stretch}.search{min-width:100%;width:100%}.table-wrap{display:none}.mobile-cards{display:block;padding:8px}.mobile-change{border:1px solid var(--line);border-radius:6px;margin:8px 0;padding:12px}.mobile-change .test-name{margin:8px 0}.mobile-change-row{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding-top:7px}.detail-grid{grid-template-columns:1fr}.footer .shell{flex-direction:column}}
