:root{
  --bg:#07111f; --panel:#0d1b2a; --panel2:#102235; --text:#eaf2ff;
  --muted:#8ba2bd; --border:#1d3853; --good:#2dd4bf; --warn:#f59e0b; --bad:#fb7185;
  --blue:#60a5fa; --purple:#c084fc; --cyan:#22d3ee; --green:#34d399;
}
*{box-sizing:border-box}
body{margin:0;background:linear-gradient(180deg,#06101c,#091726 45%,#07111f);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
header{display:flex;justify-content:space-between;align-items:center;padding:26px 32px;border-bottom:1px solid var(--border);position:sticky;top:0;background:rgba(7,17,31,.94);backdrop-filter:blur(12px);z-index:10}
.headerRight{display:flex;align-items:center;gap:14px}
h1{font-size:24px;margin:2px 0 4px}
h2{font-size:16px;margin:0 0 10px}
p{color:var(--muted);margin:4px 0 0;font-size:13px}
.eyebrow{font-size:11px;letter-spacing:.18em;color:var(--cyan);font-weight:700}
#subtitle{font-size:13px;color:var(--muted)}
.statusWrap{display:flex;align-items:center;gap:8px;font-size:13px}
.dot{width:9px;height:9px;border-radius:50%;background:var(--warn);box-shadow:0 0 18px var(--warn)}
.dot.good{background:var(--good);box-shadow:0 0 18px var(--good)}
.dot.bad{background:var(--bad);box-shadow:0 0 18px var(--bad)}
.dot.pausedDot{background:#94a3b8;box-shadow:none}
.modeBadge{font-size:11px;font-weight:800;letter-spacing:.09em;padding:6px 10px;border-radius:999px;border:1px solid var(--border)}
.modeBadge.live{color:#5eead4;border-color:rgba(45,212,191,.5);background:rgba(45,212,191,.08)}
.modeBadge.paused{color:#fbbf24;border-color:rgba(245,158,11,.5);background:rgba(245,158,11,.08)}
main{padding:24px 32px 50px;max-width:1700px;margin:auto}
.cards{display:grid;grid-template-columns:repeat(8,minmax(145px,1fr));gap:12px;margin-bottom:14px}
.card,.panel,.miniCard{background:linear-gradient(180deg,rgba(16,34,53,.92),rgba(13,27,42,.94));border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 40px rgba(0,0,0,.16)}
.card{padding:16px}
.label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}
.value{font-size:29px;font-weight:750;margin:5px 0 2px}
.sub{font-size:11px;color:var(--muted)}
.panel{padding:18px;margin-bottom:14px}
.compactPanel{padding:14px 18px}
.controls{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.controlRow{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}
.windowStatus{font-size:12px;color:var(--muted);text-align:right}
select,button{background:#07111f;color:#eaf2ff;border:1px solid #1d3853;border-radius:8px;padding:8px 11px;font-size:12px}
button{cursor:pointer}
button:hover:not(:disabled){border-color:#3c6387}
button:disabled{opacity:.45;cursor:not-allowed}
.panelHead{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:8px}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--muted)}
.legend span{display:flex;align-items:center;gap:6px}
.l{display:inline-block;width:18px;height:3px;border-radius:3px}
.l.total{background:#60a5fa}.l.efs{background:#22d3ee}.l.wa{background:#c084fc}.l.vm{background:#34d399}.l.sock{background:#f59e0b}
.l.passed{background:#34d399}.l.clientErr{background:#f59e0b}.l.serverErr{background:#fb7185}
canvas{width:100%;display:block}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.kv{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid rgba(29,56,83,.65);gap:20px}
.kv:last-child{border-bottom:0}.kv span{color:var(--muted);font-size:13px}.kv strong{font-size:13px;text-align:right}
.assessment{padding:14px;border-radius:10px;background:#091827;border:1px solid var(--border);color:#c9d8ea;line-height:1.5;font-size:13px}
.assessment.good{border-color:rgba(45,212,191,.45)}.assessment.warn{border-color:rgba(245,158,11,.55)}.assessment.bad{border-color:rgba(251,113,133,.65)}
.barWrap{margin-top:16px}.barLabel{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin-bottom:7px}.bar{height:10px;background:#07111f;border-radius:20px;overflow:hidden;border:1px solid var(--border)}#barFill{height:100%;width:0;background:linear-gradient(90deg,var(--good),var(--warn),var(--bad));transition:width .25s}
.tableWrap{overflow:auto;max-height:390px}
.errorTableWrap{min-height:220px}
table{width:100%;border-collapse:collapse;font-size:11px}
th{text-align:left;color:var(--muted);font-weight:700;position:sticky;top:0;background:#102235;padding:9px;border-bottom:1px solid var(--border)}
td{padding:8px 9px;border-bottom:1px solid rgba(29,56,83,.45);vertical-align:top}
td:last-child{word-break:break-all}
.badge{display:inline-block;padding:2px 6px;border-radius:20px;border:1px solid var(--border);font-size:10px}
.badge.eof{border-color:rgba(251,113,133,.55);color:#fda4af}.badge.k64{border-color:rgba(245,158,11,.55);color:#fbbf24}.badge.active{border-color:rgba(45,212,191,.45);color:#5eead4}
.requestCards{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;margin:12px 0}
.miniCard{padding:12px}
.miniValue{font-size:23px;font-weight:750;margin-top:4px}
.requestLegend{margin:2px 0 8px}
.sourceNote{font-size:11px;color:var(--muted);max-width:560px;text-align:right;word-break:break-all}
.inlineWarning{margin-top:10px;padding:10px 12px;border-radius:9px;border:1px solid rgba(245,158,11,.55);background:rgba(245,158,11,.07);color:#fbbf24;font-size:12px}
.hidden{display:none}
.mutedInline{color:var(--muted);font-weight:400;font-size:11px}
.sectionHelp{margin:-3px 0 12px}
@media(max-width:1300px){.cards{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){header{padding:20px}.cards{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}main{padding:18px}.panelHead,.controls{display:block}.legend{margin-top:10px}.windowStatus{text-align:left;margin-top:10px}.requestCards{grid-template-columns:repeat(2,1fr)}}

.chartWrap{position:relative}
.chartTooltip{position:absolute;z-index:8;min-width:280px;max-width:340px;background:#06111f;border:1px solid #355575;border-radius:10px;padding:11px 12px;pointer-events:none;box-shadow:0 12px 30px rgba(0,0,0,.35);font-size:11px}
.tooltipGrid{display:grid;grid-template-columns:1fr auto 1fr auto;gap:5px 10px;margin-top:8px}.tooltipGrid span{color:var(--muted)}.tooltipHint{color:#8ba2bd;margin-top:8px;border-top:1px solid var(--border);padding-top:7px}
.requestCards.six{grid-template-columns:repeat(6,minmax(120px,1fr))}
.statusCode{font-weight:800;padding:3px 7px;border-radius:999px}.s4xx{color:#fbbf24;background:rgba(245,158,11,.1)}.s5xx{color:#fda4af;background:rgba(251,113,133,.1)}
.tinyBtn{padding:4px 8px;font-size:10px}
.drillMetric{display:grid;grid-template-columns:repeat(8,minmax(90px,1fr));gap:8px;margin:12px 0 18px}.drillMetric>div{background:#091827;border:1px solid var(--border);border-radius:9px;padding:9px}.drillMetric span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.drillMetric b{font-size:16px}
.smallScroll{max-height:270px}
h3{font-size:13px;margin:8px 0}
dialog{width:min(1100px,94vw);max-height:90vh;overflow:auto;background:#0a1726;color:var(--text);border:1px solid #31506f;border-radius:14px;padding:18px;box-shadow:0 24px 80px rgba(0,0,0,.6)}
dialog::backdrop{background:rgba(2,8,16,.72)}
.dialogHead{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;position:sticky;top:-18px;background:#0a1726;padding:12px 0;border-bottom:1px solid var(--border);z-index:3}
.detailGrid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:9px;margin:16px 0}.detailGrid>div{background:#091827;border:1px solid var(--border);border-radius:9px;padding:10px}.detailGrid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;margin-bottom:4px}.detailGrid .wide{grid-column:span 2}
pre{white-space:pre-wrap;word-break:break-word;background:#06111f;border:1px solid var(--border);border-radius:9px;padding:12px;max-height:360px;overflow:auto;color:#c9d8ea;font-size:11px}
.notice{border:1px solid rgba(245,158,11,.55);background:rgba(245,158,11,.07);color:#f8d486;border-radius:9px;padding:10px 12px;margin:12px 0;font-size:12px}
.contextBlock{margin-bottom:12px}.contextTitle{font-size:11px;color:#d5e4f5;margin-bottom:5px}.emptyState{color:var(--muted);font-size:12px;padding:8px 0}
@media(max-width:1300px){.requestCards.six{grid-template-columns:repeat(3,1fr)}.drillMetric{grid-template-columns:repeat(4,1fr)}}
@media(max-width:700px){.requestCards.six{grid-template-columns:repeat(2,1fr)}.drillMetric{grid-template-columns:repeat(2,1fr)}.detailGrid{grid-template-columns:1fr}.detailGrid .wide{grid-column:span 1}}

.envBadge{
  display:inline-block;margin-left:10px;padding:4px 8px;border-radius:999px;
  border:1px solid #f59e0b;background:rgba(245,158,11,.12);
  color:#fbbf24;font-size:11px;vertical-align:middle;letter-spacing:.08em
}
