html,body,#app{width:100%;min-width:100%;min-height:100vh;margin:0;padding:0}button,input,select{font-family:inherit}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{color:#0f172a;background:#f4f7fb;font-family:Arial,Helvetica,sans-serif}.app{background:radial-gradient(circle at 100% 0,#0075ff14,#0000 28%),#f4f7fb;min-height:100vh;display:flex}.sidebar{color:#fff;background:linear-gradient(#002a54 0%,#001f3f 42%,#00172f 100%);width:260px;min-height:100vh;padding:28px 18px;position:sticky;top:0;box-shadow:8px 0 30px #001f3f29}.sidebar-brand{cursor:pointer;appearance:none;background:linear-gradient(135deg,#0a84ff2e,#ffffff0d);border:0;border-radius:16px;justify-content:center;align-items:center;min-height:108px;margin-bottom:22px;padding:16px;display:flex;overflow:hidden;box-shadow:0 10px 24px #00000024,inset 0 0 0 1px #ffffff14}.sidebar-brand:focus-visible{outline-offset:3px;outline:3px solid #4c91ffd9}.sidebar-logo{object-fit:contain;width:190px;height:auto;display:block}.sidebar-nav{flex-direction:column;gap:14px;display:flex}.nav-button{color:#dbeafe;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:14px;align-items:center;gap:14px;width:100%;min-height:54px;padding:0 18px;font-size:16px;font-weight:800;transition:all .2s;display:flex}.nav-button:hover{color:#fff;background:#ffffff14}.nav-button.active{color:#fff;background:linear-gradient(135deg,#0a84ff 0%,#005ed9 100%);border-color:#ffffff2e;box-shadow:inset 0 0 0 1px #ffffff14,0 12px 26px #0075ff5c}.nav-icon{border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:19px;line-height:1;display:inline-flex}.main{flex:1;min-width:0}.topbar{background:#fffffff5;border-bottom:1px solid #dde6f1;justify-content:space-between;align-items:center;min-height:104px;padding:0 42px;display:flex;box-shadow:0 8px 26px #0f172a0a}.brand-title{color:#0b1220;letter-spacing:-.4px;font-size:30px;font-weight:900;line-height:1.1}.brand-subtitle{color:#516174;margin-top:8px;font-size:16px}.project-control{align-items:center;gap:14px;display:flex}.project-control label{color:#0b1220;font-size:17px;font-weight:900}.project-control select{color:#0b1220;cursor:pointer;background:#fff;border:1px solid #cbd9ea;border-radius:20px;outline:none;min-width:170px;height:50px;padding:0 42px 0 20px;font-size:16px;font-weight:900;box-shadow:0 6px 18px #0f172a14,0 0 0 3px #0a84ff0f}.project-control select:focus,.project-control select:hover{border-color:#0a84ff;box-shadow:0 8px 22px #0f172a1a,0 0 0 4px #0a84ff24}.content{padding:32px 42px 44px}.panel{background:#fffffffa;border:1px solid #dbe6f2;border-radius:22px;width:100%;min-height:calc(100vh - 170px);padding:36px 42px;box-shadow:0 20px 50px #0f172a14,inset 0 1px #ffffffe6}.results-panel{padding-right:12px}.panel-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.panel-header h1{color:#0b1220;letter-spacing:-.6px;margin:0;font-size:36px;font-weight:900;line-height:1.1}.panel-header p{color:#516174;margin:10px 0 0;font-size:17px}.results-header{margin-bottom:22px}.primary-button,.secondary-button,.suite-run-button,.small-action-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0a84ff 0%,#005ed9 100%);border:1px solid #0067df;border-radius:14px;height:44px;padding:0 22px;font-size:15px;font-weight:900;transition:all .2s;box-shadow:0 10px 22px #005ed93d,inset 0 1px #fff3}.primary-button:hover,.secondary-button:hover,.suite-run-button:hover,.small-action-button:hover{transform:translateY(-1px)}.large-button{border-radius:24px;justify-content:center;align-items:center;gap:12px;min-width:190px;height:52px;font-size:17px;display:inline-flex}.secondary-button,.compact-button{color:#005ed9;background:#fff;border-color:#0a84ff;box-shadow:0 8px 20px #0a84ff1f,0 0 0 3px #0a84ff0f}.compact-button{border-radius:12px;height:38px;padding:0 18px;font-size:13px}.small-action-button{border-radius:10px;height:34px;padding:0 14px;font-size:13px}button:disabled{opacity:.55;cursor:not-allowed;transform:none}.notice{color:#03435f;background:#e8f5ff;border:1px solid #90cdfc;border-radius:14px;margin-bottom:20px;padding:14px 46px 14px 18px;font-size:15px;font-weight:800;position:relative}.notice-close{color:currentColor;cursor:pointer;opacity:.7;background:0 0;border:0;border-radius:8px;width:28px;height:28px;font-size:24px;font-weight:900;line-height:24px;position:absolute;top:10px;right:12px}.notice-close:hover{opacity:1;background:#ffffff73}.notice-main{font-weight:900}.notice-sub{margin-top:8px;font-size:13px}.notice-sub a{color:#005ed9;font-weight:900;text-decoration:none}.notice-running{color:#03435f;background:#e8f5ff;border-color:#90cdfc}.notice-success{color:#166534;background:#e8f8ef;border-color:#86efac}.notice-failed{color:#991b1b;background:#fdeaea;border-color:#fecaca}.empty{color:#516174;background:#f8fafc;border:1px dashed #b8c7da;border-radius:16px;padding:26px;font-size:15px}.suite-grid{grid-template-columns:repeat(4,minmax(230px,1fr));gap:20px;display:grid}.suite-card{background:#fff;border:1px solid #dbe6f2;border-radius:16px;flex-direction:column;justify-content:space-between;min-height:190px;padding:24px;transition:all .2s;display:flex;overflow:visible;box-shadow:0 8px 20px #0f172a0d,inset 0 1px #ffffffe6}.suite-card:hover{border-color:#bdd6f4;transform:translateY(-2px)}.suite-card.disabled{opacity:.78;background:#f5f9ff;border-color:#c7dcf5;position:relative}.suite-card.disabled:hover{border-color:#c7dcf5;transform:none}.suite-card.disabled .suite-run-button{cursor:not-allowed;color:#fff;box-shadow:none;background:linear-gradient(135deg,#a7bdd8,#8fa9ca)}.suite-title-actions{flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.suite-disabled-icon{color:#0b64c0;cursor:help;background:#eef6ff;border:1px solid #8ec5ff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:15px;font-weight:900;line-height:1;display:inline-flex}.suite-disabled-icon:hover{background:#dceeff;border-color:#0b83ff}.suite-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.suite-card h3{color:#0b1220;margin:0;font-size:21px;font-weight:900;line-height:1.15}.suite-card p{color:#405167;margin:18px 0 22px;font-size:15px;line-height:1.35}.suite-run-button{border-radius:12px;width:100%;height:46px}.help-button{color:#0067df;cursor:pointer;background:#fff;border:1px solid #0a84ff;border-radius:999px;width:30px;height:30px;font-size:15px;font-weight:900;line-height:1;transition:all .2s;box-shadow:0 6px 14px #0a84ff1f}.help-button:hover{background:#eef7ff;border-color:#0067df;transform:translateY(-1px)}.modal-overlay{z-index:999999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#01172f7a;justify-content:center;align-items:center;padding:32px;display:flex;position:fixed;inset:0}.suite-modal,.runs-modal,.full-response-modal{background:#fff;border:1px solid #9bc8f7;border-radius:18px;width:min(720px,92vw);max-height:78vh;overflow:hidden;box-shadow:0 28px 80px #00172f59,inset 0 0 0 1px #ffffff80}.runs-modal,.full-response-modal{width:min(980px,94vw)}.suite-modal-header{background:linear-gradient(135deg,#f7fbff 0%,#eef7ff 100%);border-bottom:1px solid #dbe6f2;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px;display:flex}.suite-modal-header h2{color:#0b1220;margin:0;font-size:24px;font-weight:900}.suite-modal-header p{color:#516174;margin:6px 0 0;font-size:14px;font-weight:700}.modal-close-button{color:#0b1220;cursor:pointer;background:#fff;border:1px solid #cbd9ea;border-radius:10px;width:34px;height:34px;font-size:24px;font-weight:800;line-height:1}.modal-close-button:hover{color:#0067df;border-color:#0a84ff}.suite-modal-body{max-height:calc(78vh - 92px);padding:20px 26px 24px;overflow-y:auto}.suite-modal-body ul{margin:0;padding-left:20px}.suite-modal-body li{color:#172033;margin-bottom:10px;font-size:14px;font-weight:700;line-height:1.45}.runs-modal-body{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;max-height:calc(78vh - 92px);padding:20px 24px 24px;display:grid;overflow-y:auto}.full-response-body{color:#0f172a;white-space:pre-wrap;overflow-wrap:break-word;background:#fff;max-height:calc(78vh - 92px);margin:0;padding:22px 24px 28px;font-family:Arial,Helvetica,sans-serif;font-size:14px;line-height:1.55;overflow:auto}.full-response-marker{text-align:center;border-radius:8px;min-width:42px;padding:1px 7px;font-weight:900;line-height:1.35;display:inline-block}.full-response-marker-ok{color:#047857;background:#dcfce7;border:1px solid #22c55e;box-shadow:0 0 0 2px #22c55e1f}.full-response-marker-fail{color:#b91c1c;background:#fee2e2;border:1px solid #ef4444;box-shadow:0 0 0 2px #ef44441f}.modal-empty{color:#516174;margin:0;font-size:14px;font-weight:700}.filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px;display:flex}.filters input,.filters select,.filters button{color:#0b1220;background:#fff;border:1px solid #cbd9ea;border-radius:14px;outline:none;height:44px;font-size:14px;font-weight:800;transition:all .2s;box-shadow:0 6px 16px #0f172a0d}.filters select{cursor:pointer;flex:0 0 190px;padding:0 14px}.filters input[type=date]{flex:0 0 170px;padding:0 14px}.filters button{cursor:pointer;flex:none;padding:0 22px}.filters input:hover,.filters select:hover,.filters button:hover,.filters input:focus,.filters select:focus{border-color:#0a84ff;box-shadow:0 8px 18px #0f172a14,0 0 0 4px #0a84ff1a}.filters.loading input,.filters.loading select,.filters.loading button,.filters input:disabled,.filters select:disabled,.filters button:disabled{cursor:wait;opacity:.72;background:#f8fbff}.filter-loader{color:#0b4fb3;background:#eff6ff;border:1px solid #dbeafe;border-radius:14px;align-items:center;gap:10px;margin:-6px 0 18px;padding:12px 16px;font-size:14px;font-weight:900;display:inline-flex;box-shadow:0 8px 18px #0a84ff14}.reset-button{margin-left:auto}.runs-panel{background:#f8fbff;border:1px solid #dbe6f2;border-radius:16px;margin:0 0 22px;padding:18px;box-shadow:0 8px 22px #0f172a0a}.active-pipelines-panel{background:#f8fbff;border-color:#90cdfc}.active-pipeline-card{cursor:pointer}.run-card.running{background:#eef7ff;border-color:#0a84ff}.progress-spinner{border:3px solid #0a84ff38;border-top-color:#0a84ff;border-radius:999px;flex:0 0 22px;width:22px;height:22px;animation:.75s linear infinite progress-spin}.progress-spinner.small{border-width:2px;flex-basis:13px;width:13px;height:13px}.run-progress-badge{color:#005ed9;vertical-align:middle;background:#e8f5ff;border-radius:999px;align-items:center;gap:5px;margin-left:8px;padding:3px 7px;font-size:10px;line-height:1;display:inline-flex}@keyframes progress-spin{to{transform:rotate(360deg)}}.runs-panel-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px;display:flex}.runs-panel-header h3{color:#0b1220;margin:0;font-size:18px;font-weight:900}.runs-panel-header p{color:#516174;margin:5px 0 0;font-size:14px}.runs-panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.runs-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.run-card{color:#0b1220;text-align:left;cursor:pointer;background:#fff;border:1px solid #cbd9ea;border-radius:14px;min-height:82px;padding:14px 16px;transition:all .2s;box-shadow:0 6px 16px #0f172a0d}.run-card:hover{border-color:#0a84ff;transform:translateY(-1px);box-shadow:0 10px 22px #0f172a14,0 0 0 4px #0a84ff14}.run-card.active{background:#eef7ff;border-color:#0a84ff;box-shadow:0 10px 22px #0a84ff24,0 0 0 4px #0a84ff1f}.run-card.running{border-color:#0a84ff;box-shadow:0 10px 22px #0a84ff1f,0 0 0 4px #0a84ff1a}.run-card-modal{width:100%}.run-main{flex-direction:column;gap:4px;display:flex}.run-main strong{font-size:14px;font-weight:900}.run-main span{color:#516174;font-size:13px;font-weight:700}.run-stats{flex-wrap:wrap;gap:8px;margin-top:10px;font-size:12px;font-weight:900;display:flex}.run-ok{color:#166534}.run-fail{color:#991b1b}.run-wait{color:#854d0e}.runs-note{color:#516174;margin-top:12px;font-size:13px;font-weight:700}.table-wrap{background:#fff;border:1px solid #dbe6f2;border-radius:16px;width:100%;overflow:auto;box-shadow:0 8px 22px #0f172a0d}.expandable-run-row{cursor:pointer}.expandable-run-row:hover td,.expandable-run-row.active td{background:#eef7ff}.expand-arrow{color:#005ed9;vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;margin-right:10px;font-size:24px;line-height:1;transition:transform .18s,background .18s;display:inline-flex}.expand-arrow.open{background:#dff0ff;transform:rotate(90deg)}.run-details-row td{background:#f8fbff;padding:0}.run-details-loading{color:#516174;padding:22px 24px;font-size:14px;font-weight:800}.table-wrap.content-busy{min-height:160px;position:relative}.results-loading-overlay{z-index:5;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#0b4fb3;pointer-events:none;background:#f8fbffdb;border:1px solid #dbeafe;border-radius:16px;justify-content:center;align-items:center;gap:12px;font-size:15px;font-weight:900;display:flex;position:absolute;inset:12px}.run-details-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;padding:18px;display:grid}.run-detail-card{background:#fff;border:1px solid #dbe6f2;border-radius:14px;padding:16px;box-shadow:0 6px 16px #0f172a0d}.run-detail-card.success{background:#f0fdf4;border-color:#bbf7d0}.run-detail-card.failed{background:#fff1f2;border-color:#fecaca}.run-detail-card.wait{background:#fffbeb;border-color:#fde68a}.run-detail-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.run-detail-header strong{color:#0b1220;font-size:15px;font-weight:900}.run-detail-answer{color:#172033;white-space:pre-line;overflow-wrap:anywhere;background:#ffffffb8;border-radius:10px;min-height:42px;padding:12px;font-size:13px;font-weight:800;line-height:1.45}.run-detail-answer.compact{min-height:0;max-height:88px;overflow:hidden}.answer-modal-button{color:#0067df;cursor:pointer;background:#fff;border:1px solid #0a84ff;border-radius:10px;height:34px;margin-top:10px;padding:0 14px;font-size:13px;font-weight:900}.answer-modal-button:hover{background:#eef7ff}.run-detail-meta{color:#516174;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:12px;font-size:12px;font-weight:800;display:grid}.pagination{color:#0b1220;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:36px;margin-top:16px;font-size:13px;font-weight:500;display:flex}.pagination-size,.pagination-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.page-size-select{font-variant-numeric:tabular-nums;width:82px;position:relative}.page-size-trigger{color:#0b4f93;cursor:pointer;background:#f3f9ff;border:1px solid #b9d7f5;border-radius:10px;justify-content:space-between;align-items:center;width:100%;height:36px;padding:0 10px 0 14px;font-size:14px;font-weight:800;line-height:1;display:flex;box-shadow:0 5px 14px #0a84ff1a}.page-size-trigger:hover,.page-size-trigger:focus{border-color:#0a84ff;outline:none;box-shadow:0 7px 18px #0a84ff24,0 0 0 3px #0a84ff1a}.page-size-chevron{color:#0a84ff;font-size:14px;line-height:1}.page-size-menu{z-index:50;background:#fff;border:1px solid #c8def6;border-radius:12px;width:82px;padding:6px;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 16px 34px #0f172a2e,inset 0 0 0 1px #ffffff80}.page-size-option{color:#0b1220;font-variant-numeric:tabular-nums;text-align:center;cursor:pointer;background:0 0;border:none;border-radius:8px;width:100%;height:34px;padding:0 10px;font-size:14px;font-weight:800}.page-size-option:hover{color:#005ed9;background:#eef7ff}.page-size-option.active{color:#005ed9;background:#dff0ff;box-shadow:inset 0 0 0 1px #9bc8f7}.pagination-summary{font-variant-numeric:tabular-nums;text-align:right;min-width:108px}.pagination-arrow{color:#0067df;cursor:pointer;background:0 0;border:none;border-radius:999px;width:28px;height:28px;padding:0;font-size:30px;font-weight:500;line-height:24px}.pagination-arrow:hover:not(:disabled){background:#eef7ff}.pagination-arrow:disabled{color:#9aa8b8;cursor:not-allowed}.scroll-top-button{z-index:60;color:#fff;cursor:pointer;background:linear-gradient(135deg,#0a84ff 0%,#005ed9 100%);border:1px solid #ffffff2e;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:22px;font-weight:900;line-height:1;display:inline-flex;position:fixed;top:166px;right:8px;box-shadow:0 8px 18px #005ed93d,0 0 0 2px #0a84ff14}.scroll-top-button:hover{background:linear-gradient(135deg,#1b91ff 0%,#0067df 100%);transform:translateY(-1px)}table{border-collapse:collapse;width:100%;font-size:14px}th{color:#0b1220;text-align:left;white-space:nowrap;background:#f2f6fb;font-weight:900}th,td{vertical-align:top;border-bottom:1px solid #e6eef7;padding:14px 16px}tr:last-child td{border-bottom:none}td{color:#172033;font-weight:700}.test-name{min-width:260px;font-weight:900}.status-badge{border-radius:999px;justify-content:center;min-width:82px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.status-badge.success{color:#166534;background:#dcfce7}.status-badge.failed{color:#991b1b;background:#fee2e2}.status-badge.wait{color:#854d0e;background:#fef9c3}.status-badge.unknown{color:#374151;background:#e5e7eb}tr.success td{background:#e8f8ef}tr.failed td{background:#fdeaea}tr.wait td{background:#fff8d9}@media (width<=1400px){.suite-grid{grid-template-columns:repeat(3,minmax(230px,1fr))}.runs-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.analytics-filters{margin:0 0 18px}@media (width<=1100px){.app{flex-direction:column}.sidebar{width:100%;min-height:auto;padding:16px;position:static}.sidebar-brand{min-height:auto;padding:14px}.sidebar-logo{width:170px}.sidebar-nav{flex-direction:row}.nav-button{width:auto;min-width:170px}.topbar{flex-wrap:wrap;gap:18px;padding:22px}.content{padding:22px}.suite-grid{grid-template-columns:repeat(2,minmax(230px,1fr))}.panel{padding:26px}.results-panel{padding-right:12px}.panel-header{flex-direction:column}.reset-button{margin-left:0}}@media (width<=720px){.analytics-health,.analytics-insight-strip,.analytics-cards{grid-template-columns:1fr}.analytics-health-score,.analytics-health-metrics{grid-column:1/-1}.analytics-health-metrics,.suite-grid,.runs-list{grid-template-columns:1fr}.filters input,.filters input[type=date],.filters select,.filters button{flex:none;width:100%}.pagination{flex-direction:column;align-items:stretch}.pagination-actions,.pagination-size{justify-content:flex-start}}.n8n-job-cell{vertical-align:middle;flex-direction:column;gap:3px;display:inline-flex}.n8n-job-cell small{color:#516174;font-size:12px;font-weight:800}.analytics-panel{min-height:calc(100vh - 170px)}.analytics-health{background:linear-gradient(135deg,#f8fbff 0%,#fff 54%,#eef7ff 100%);border:1px solid #d7e8ff;border-radius:18px;grid-template-columns:minmax(260px,1.5fr) 180px minmax(320px,1fr);align-items:stretch;gap:20px;margin-bottom:18px;padding:22px;display:grid;box-shadow:0 10px 28px #0f172a0f}.analytics-health.success{background:linear-gradient(135deg,#f4fff8 0%,#fff 58%,#eafaf0 100%);border-color:#b9efd0}.analytics-health.warning{background:linear-gradient(135deg,#fffaf0 0%,#fff 58%,#fff4d6 100%);border-color:#f7d889}.analytics-health.danger{background:linear-gradient(135deg,#fff5f5 0%,#fff 58%,#fee2e2 100%);border-color:#fecaca}.analytics-health-main,.analytics-health-score,.analytics-health-metrics{min-width:0}.analytics-health-eyebrow{color:#52677f;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:12px;font-weight:900;display:block}.analytics-health-main strong{color:#0f172a;font-size:30px;font-weight:950;line-height:1.1;display:block}.analytics-health-main p{color:#40546d;max-width:680px;margin:8px 0 0;font-size:14px;font-weight:700;line-height:1.45}.analytics-health-score{background:#ffffffb8;border:1px solid #cfe0f5e6;border-radius:16px;flex-direction:column;justify-content:center;padding:16px;display:flex}.analytics-health-score strong{color:#0f172a;font-size:44px;font-weight:950;line-height:1}.analytics-health-score span{color:#58708f;margin-top:8px;font-size:13px;font-weight:900}.analytics-health-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.analytics-health-metrics div{background:#ffffffb8;border:1px solid #cfe0f5e6;border-radius:14px;padding:14px}.analytics-health-metrics span{color:#58708f;font-size:12px;font-weight:900;display:block}.analytics-health-metrics strong{color:#0f172a;overflow-wrap:anywhere;margin-top:6px;font-size:18px;font-weight:950;line-height:1.2;display:block}.analytics-health-metrics strong.positive{color:#15803d}.analytics-health-metrics strong.negative{color:#b91c1c}.analytics-health-metrics strong.neutral{color:#475569}.analytics-insight-strip{grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;margin-bottom:22px;display:grid}.analytics-insight{background:#fff;border:1px solid #dbe6f2;border-radius:16px;min-height:132px;padding:16px;box-shadow:0 8px 20px #0f172a0b}.analytics-insight span{color:#58708f;text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:900;display:block}.analytics-insight strong{color:#0f172a;margin-top:10px;font-size:24px;font-weight:950;line-height:1;display:block}.analytics-insight p{color:#475569;margin:10px 0 0;font-size:13px;font-weight:700;line-height:1.42}.analytics-insight.success{background:#f0fdf4;border-color:#bbf7d0}.analytics-insight.warning{background:#fffbeb;border-color:#fde68a}.analytics-insight.danger{background:#fef2f2;border-color:#fecaca}.analytics-cards{grid-template-columns:repeat(4,minmax(160px,1fr));gap:18px;margin-bottom:24px;display:grid}.analytics-card{background:#fff;border:1px solid #dbe6f2;border-radius:16px;padding:22px;box-shadow:0 8px 20px #0f172a0d}.analytics-card strong{color:#0b1220;font-size:34px;font-weight:900;line-height:1;display:block}.analytics-card span{color:#516174;margin-top:8px;font-size:14px;font-weight:800;display:block}.analytics-card.success{background:#f0fdf4;border-color:#bbf7d0}.analytics-card.failed{background:#fef2f2;border-color:#fecaca}.analytics-card.wait{background:#fffbeb;border-color:#fde68a}.analytics-chart-card,.analytics-table-card{background:#fff;border:1px solid #dbe6f2;border-radius:18px;margin-top:22px;padding:24px;box-shadow:0 8px 20px #0f172a0d}.analytics-chart-card h3,.analytics-table-card h3{color:#0b1220;margin:0 0 18px;font-size:22px;font-weight:900}.bar-chart{flex-direction:column;gap:18px;display:flex}.bar-row{grid-template-columns:260px 1fr 230px;align-items:center;gap:16px;display:grid}.bar-label strong{color:#0b1220;font-size:15px;font-weight:900;display:block}.bar-label span{color:#64748b;margin-top:4px;font-size:13px;font-weight:700;display:block}.bar-track{background:#e2e8f0;border-radius:999px;height:22px;display:flex;overflow:hidden}.bar-segment.success{background:#22c55e}.bar-segment.failed{background:#ef4444}.bar-segment.wait{background:#f59e0b}.bar-values{justify-content:flex-end;gap:10px;font-size:13px;font-weight:900;display:flex}.analytics-header{align-items:flex-start}.analytics-cards-strong .analytics-card{min-height:118px}.analytics-grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:22px;display:grid}.analytics-card-tall{min-height:390px}.analytics-card-header-row{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;display:flex}.analytics-card-header-row h3{margin-bottom:6px}.analytics-card-header-row p{color:#64748b;margin:0;font-size:13px;font-weight:700}.compact-empty{min-height:auto;padding:22px}.run-timeline-chart,.job-score-list,.problem-list,.diff-lists{flex-direction:column;gap:14px;display:flex}.timeline-row{grid-template-columns:160px 1fr 90px;align-items:center;gap:12px;display:grid}.timeline-run-label strong,.job-score-title strong,.problem-name strong{color:#0f172a;font-size:14px;font-weight:900;display:block}.timeline-run-label span,.job-score-title span,.problem-name span{color:#64748b;margin-top:3px;font-size:12px;font-weight:700;display:block}.timeline-track{background:#e5edf7;border:1px solid #d8e6f8;border-radius:999px;height:24px;display:flex;overflow:hidden}.timeline-segment.success{background:#22c55e}.timeline-segment.failed{background:#ef4444}.timeline-segment.wait{background:#60a5fa}.timeline-values{justify-content:flex-end;gap:8px;font-size:12px;font-weight:900;display:flex}.job-score-row,.problem-row{grid-template-columns:1fr 180px 54px;align-items:center;gap:12px;display:grid}.job-score-meter,.problem-meter{background:#e5edf7;border:1px solid #d8e6f8;border-radius:999px;height:12px;overflow:hidden}.job-score-fill{border-radius:inherit;background:linear-gradient(90deg,#0ea5e9,#2563eb);height:100%}.problem-fill{border-radius:inherit;background:linear-gradient(90deg,#f87171,#ef4444);height:100%}.job-score-percent,.problem-row>strong{color:#0f172a;text-align:right;font-size:13px}.job-score-meta{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.job-score-meta span{color:#64748b;white-space:nowrap;font-size:12px;font-weight:800}@media (width<=1320px){.analytics-grid-two{grid-template-columns:1fr}}.compare-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.compare-controls select{color:#0f172a;background:#fff;border:1px solid #cfe0f5;border-radius:12px;height:44px;padding:0 12px;font-weight:800}.compare-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.compare-summary-card{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;padding:14px}.compare-summary-card strong{color:#0f172a;font-size:24px;font-weight:900;display:block}.compare-summary-card span{color:#64748b;margin-top:3px;font-size:12px;font-weight:800;display:block}.compare-summary-card.failed{background:#fef2f2;border-color:#fecaca}.compare-summary-card.success{background:#f0fdf4;border-color:#bbf7d0}.diff-list{background:#f8fbff;border:1px solid #dbe6f2;border-radius:14px;padding:14px}.diff-list h4{color:#0f172a;margin:0 0 10px;font-size:15px;font-weight:900}.diff-list p{color:#64748b;margin:0;font-size:13px;font-weight:700}.diff-list div{border-top:1px solid #e2e8f0;justify-content:space-between;gap:10px;padding:8px 0;display:flex}.diff-list div:first-of-type{border-top:0}.diff-list strong{color:#0f172a;font-size:13px}.diff-list span{color:#64748b;white-space:nowrap;font-size:12px;font-weight:800}.stability-matrix-wrap{border:1px solid #dbe6f2;border-radius:14px;overflow:auto}.stability-matrix{min-width:860px}.stability-matrix th,.stability-matrix td{text-align:center;white-space:nowrap}.stability-matrix .matrix-name{text-align:left;text-overflow:ellipsis;max-width:320px;overflow:hidden}.matrix-status{border-radius:999px;justify-content:center;align-items:center;min-width:54px;height:26px;font-size:11px;font-weight:900;display:inline-flex}.matrix-status.success{color:#166534;background:#dcfce7}.matrix-status.failed{color:#991b1b;background:#fee2e2}.matrix-status.wait,.matrix-status.unknown{color:#1d4ed8;background:#dbeafe}.analytics-insights-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:22px;margin-top:22px;display:grid}.analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.analytics-kpi-item{background:linear-gradient(#f8fbff 0%,#fff 100%);border:1px solid #dbe6f2;border-radius:14px;padding:14px}.analytics-kpi-item span{color:#58708f;font-size:12px;font-weight:900;display:block}.analytics-kpi-item strong{color:#0f172a;margin-top:6px;font-size:24px;font-weight:900;display:block}.analytics-kpi-item small{color:#64748b;margin-top:4px;font-size:12px;font-weight:700;display:block}.analytics-kpi-footer{color:#52677f;justify-content:space-between;gap:12px;margin-top:14px;font-size:12px;font-weight:800;display:flex}.analytics-worst-card{align-self:start}@media (width<=1100px){.analytics-health,.analytics-insight-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-health-main{grid-column:1/-1}.analytics-health-metrics{grid-template-columns:1fr}.analytics-cards{grid-template-columns:repeat(2,minmax(160px,1fr))}.bar-row{grid-template-columns:1fr;align-items:stretch}.bar-values{justify-content:flex-start}.analytics-grid-two,.compare-controls,.compare-summary-grid{grid-template-columns:1fr}.timeline-row,.job-score-row,.problem-row{grid-template-columns:1fr;align-items:stretch}.timeline-values{justify-content:flex-start}.job-score-meta{align-items:flex-start}}.analytics-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.compare-controls-three{grid-template-columns:repeat(3,minmax(0,1fr))}.compare-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin:12px 0 14px;display:flex}.compare-hint{color:#47617f;font-size:13px;font-weight:700}.compare-summary-grid-wide{grid-template-columns:repeat(5,minmax(120px,1fr))}.diff-lists-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.diff-list.neutral{background:#f4f8ff;border-color:#cfe3ff}.empty-action-button{margin-top:12px}.cross-job-table-wrap{margin-top:16px;overflow-x:auto}.cross-job-table{border-collapse:collapse;width:100%;min-width:760px}.cross-job-table th,.cross-job-table td{text-align:left;vertical-align:top;border-bottom:1px solid #dbe8f6;padding:12px 14px}.cross-job-table th{color:#10223a;background:#f3f8ff;font-size:13px}@media (width<=1100px){.compare-controls-three,.diff-lists-grid,.compare-summary-grid-wide{grid-template-columns:1fr}.analytics-actions{justify-content:flex-start}}.analytics-wide-chart-card{margin-top:22px}.outcome-chart-legend{color:#52677f;white-space:nowrap;align-items:center;gap:8px;font-size:12px;font-weight:900;display:flex}.outcome-chart-legend .success-dot,.outcome-chart-legend .failed-dot{border-radius:999px;width:10px;height:10px;display:inline-block}.outcome-chart-legend .success-dot{background:#22c55e}.outcome-chart-legend .failed-dot{background:#ef4444;margin-left:8px}.outcome-butterfly-chart{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #d7e8ff;border-radius:18px;padding:18px 18px 14px}.butterfly-top-row,.butterfly-scale-row,.butterfly-row{grid-template-columns:minmax(240px,1fr) 170px minmax(240px,1fr);align-items:center;column-gap:18px;display:grid}.butterfly-top-row{color:#52677f;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:12px;font-weight:900}.butterfly-top-row span:first-child,.butterfly-scale-row span:first-child{text-align:right}.butterfly-top-row strong,.butterfly-scale-row span:nth-child(2){text-align:center}.butterfly-scale-row{color:#8a9ab0;border-bottom:1px solid #e7f0fb;padding:0 6px 10px;font-size:11px;font-weight:900}.butterfly-row{border-bottom:1px solid #edf3fb;min-height:54px}.butterfly-row:last-of-type{border-bottom:none}.butterfly-side{align-items:center;gap:12px;display:flex}.butterfly-side.left{justify-content:flex-end}.butterfly-side.right{justify-content:flex-start}.butterfly-track{flex:1;min-width:160px;height:28px;position:relative}.butterfly-track:before{content:"";background:#e3edf8;border-radius:999px;height:2px;position:absolute;top:13px;left:0;right:0}.butterfly-track.left:after,.butterfly-track.right:after{content:"";background:#b8c9dd;border-radius:999px;width:2px;height:16px;position:absolute;top:6px}.butterfly-track.left:after{right:0}.butterfly-track.right:after{left:0}.butterfly-line{border-radius:999px;min-width:8px;height:4px;position:absolute;top:12px}.butterfly-line.success{background:linear-gradient(90deg,#22c55e2e,#22c55e);right:0}.butterfly-line.failed{background:linear-gradient(90deg,#ef4444,#ef44442e);left:0}.butterfly-point{border:3px solid #fff;border-radius:999px;width:14px;height:14px;position:absolute;top:7px;transform:translate(-50%);box-shadow:0 6px 16px #0f172a29}.butterfly-point.success{background:#22c55e}.butterfly-point.failed{background:#ef4444}.butterfly-value{width:36px;font-size:14px;font-weight:950}.butterfly-value.success{color:#15803d;text-align:right}.butterfly-value.failed{color:#b91c1c}.butterfly-center{border-left:1px dashed #c9d8ea;border-right:1px dashed #c9d8ea;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:42px;display:flex;position:relative}.butterfly-center strong{color:#0f172a;font-size:17px;font-weight:950}.butterfly-center span{color:#52677f;font-size:12px;font-weight:800}.outcome-dot-chart{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #d7e8ff;border-radius:18px;padding:14px 16px 12px}.outcome-dot-chart svg{width:100%;height:360px;display:block}.chart-axis{stroke:#7e96b4;stroke-width:2px}.chart-grid-line{stroke:#e4edf8;stroke-width:1px}.chart-vertical-guide{stroke:#edf3fb;stroke-width:1px}.outcome-line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.outcome-line.success{stroke:#22c55e}.outcome-line.failed{stroke:#ef4444}.outcome-dot{stroke:#fff;stroke-width:2.5px}.outcome-dot.success{fill:#22c55e}.outcome-dot.failed{fill:#ef4444}.outcome-axis-label{fill:#52677f;font-size:13px;font-weight:800}.outcome-axis-sub-label{fill:#0f172a;font-size:14px;font-weight:900}.outcome-y-axis-label{fill:#52677f;font-size:12px;font-weight:800}.outcome-chart-caption{color:#64748b;justify-content:space-between;gap:16px;margin-top:8px;font-size:12px;font-weight:800;display:flex}.outcome-chart-pagination{color:#52677f;justify-content:flex-end;align-items:center;gap:14px;margin-top:12px;font-size:12px;font-weight:900;display:flex}.problem-row.downloadable{grid-template-columns:1fr 180px 96px 54px}.download-document-button{color:#005ed9;cursor:pointer;background:#fff;border:1px solid #0a84ff;border-radius:10px;height:32px;font-size:12px;font-weight:900;box-shadow:0 5px 14px #0a84ff1f}.download-document-button:hover{background:#eff6ff}.compare-redesign-card{min-height:460px}.compare-selector-stack{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.compare-run-selectors{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.compare-field{flex-direction:column;gap:6px;display:flex}.compare-field span{color:#52677f;font-size:12px;font-weight:900}.compare-field select{color:#0f172a;background:#fff;border:1px solid #cbd9ea;border-radius:12px;outline:none;width:100%;min-width:0;height:42px;padding:0 12px;font-size:13px;font-weight:900}.compare-selected-suite{background:#f2f8ff;border:1px solid #d7e8ff;border-radius:14px;align-items:center;gap:10px;margin:8px 0 12px;padding:10px 12px;display:flex}.compare-selected-suite span{color:#58708f;font-size:12px;font-weight:900}.compare-selected-suite strong{color:#0f172a;font-size:14px;font-weight:900}.compare-runs-summary{grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr);align-items:stretch;gap:10px;display:grid}.compare-run-card{background:#fff;border:1px solid #d7e8ff;border-radius:16px;padding:12px}.compare-run-card span,.compare-run-card small,.compare-run-card b{display:block}.compare-run-card span{color:#58708f;font-size:12px;font-weight:900}.compare-run-card strong{color:#0f172a;margin-top:4px;font-size:18px;font-weight:900;display:block}.compare-run-card small{color:#64748b;margin-top:4px;font-size:12px;font-weight:800}.compare-run-card b{color:#10223a;margin-top:8px;font-size:12px;font-weight:900}.compare-arrow{color:#0a84ff;background:#e8f2ff;border-radius:999px;justify-content:center;place-self:center;align-items:center;width:36px;height:36px;font-size:22px;font-weight:900;display:inline-flex}.compact-kpi-grid{grid-template-columns:repeat(4,minmax(100px,1fr))}.redesigned-run-compare-chart{margin-top:12px}.run-compare-kpi-grid{grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px;margin-top:16px;display:grid}.run-compare-chart{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #d7e8ff;border-radius:18px;margin-top:16px;padding:16px}.run-compare-chart-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.run-compare-chart-header span{color:#58708f;font-size:13px;font-weight:700}.run-compare-chart-row{border-top:1px solid #edf4ff;grid-template-columns:minmax(170px,240px) 1fr;align-items:center;gap:16px;padding:12px 0;display:grid}.run-compare-chart-row:first-of-type{border-top:0}.run-compare-label strong,.run-compare-label span{display:block}.run-compare-label span{color:#52677f;margin-top:4px;font-size:13px;font-weight:700}.run-compare-track{background:#e6f0fb;border-radius:999px;height:22px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #d6e7fb}@media (width<=1100px){.run-compare-kpi-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}.run-compare-chart-row,.compare-run-selectors,.compare-runs-summary{grid-template-columns:1fr}.compare-arrow{transform:rotate(90deg)}.problem-row.downloadable{grid-template-columns:1fr}.download-document-button,.problem-row>strong{justify-self:flex-start}}@media (width<=960px){.butterfly-top-row,.butterfly-scale-row,.butterfly-row{grid-template-columns:minmax(160px,1fr) 120px minmax(160px,1fr);column-gap:10px}.butterfly-center strong{font-size:14px}.butterfly-center span{font-size:11px}}@media (width<=720px){.outcome-butterfly-chart{overflow-x:auto}.butterfly-top-row,.butterfly-scale-row,.butterfly-row{min-width:720px}}
