.telemetry-lab {
  --tl-accent: #55d6be;
  --tl-blue: #79baf0;
  --tl-warn: #efb077;
  display: grid;
  gap: 15px;
  min-width: 0;
  padding: clamp(14px, 2vw, 21px);
  border: 1px solid rgba(85, 214, 190, 0.35);
  border-radius: 11px;
  color: var(--text);
  background: radial-gradient(circle at 100% 0, rgba(85, 214, 190, 0.12), transparent 42%), #0e1a27;
}

.telemetry-lab * { box-sizing: border-box; }
.telemetry-lab [hidden] { display: none !important; }
.telemetry-lab :is(button, input, select):focus-visible { outline: 2px solid #b7f0e4; outline-offset: 3px; }
.telemetry-lab button {
  min-height: 38px;
  padding: 8px 11px;
  border: 1px solid rgba(159, 201, 218, 0.35);
  border-radius: 8px;
  color: #e7f1f3;
  background: #152b39;
  font: inherit;
  font-size: 0.77rem;
  font-weight: 750;
  text-align: left;
  cursor: pointer;
  transition: border-color 150ms ease, background 150ms ease, transform 150ms ease;
}
.telemetry-lab button:hover { border-color: var(--tl-accent); background: #1a3943; transform: translateY(-1px); }
.telemetry-lab button[aria-pressed="true"] { border-color: var(--tl-accent); background: #1c4749; box-shadow: inset 0 0 0 1px rgba(85, 214, 190, 0.3); }
.telemetry-lab button:disabled { opacity: 0.5; cursor: default; transform: none; }
.telemetry-lab .telemetry-lab-primary { border-color: rgba(85, 214, 190, 0.7); color: #071d20; background: var(--tl-accent); }
.telemetry-lab .telemetry-lab-primary:hover { background: #83e6d1; }

.telemetry-lab-head { display: grid; justify-items: start; gap: 6px; }
.telemetry-lab-head h3 { margin: 0; font-size: clamp(1.03rem, 1.6vw, 1.25rem); }
.telemetry-lab-head p { max-width: 86ch; margin: 0; color: #c2d2dc; font-size: 0.8rem; line-height: 1.5; }
.telemetry-lab-kicker { color: var(--tl-accent); font-size: 0.65rem; font-weight: 850; letter-spacing: 0.1em; text-transform: uppercase; }
.telemetry-lab-role-lens { display: grid; gap: 7px; padding: 11px 12px; border: 1px solid rgba(121, 186, 240, 0.28); border-radius: 8px; background: rgba(121, 186, 240, 0.07); }
.telemetry-lab-role-lens strong { color: #d8e9f1; font-size: 0.75rem; }
.telemetry-lab-role-lens p { margin: 0; color: #b9d0dd; font-size: 0.73rem; line-height: 1.45; }
.telemetry-lab-role-lens .telemetry-lab-button-row button { min-height: 31px; padding: 5px 9px; font-size: 0.71rem; }

.telemetry-lab-panel {
  display: grid;
  align-content: start;
  gap: 11px;
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(160, 190, 210, 0.19);
  border-radius: 9px;
  background: rgba(7, 18, 29, 0.62);
}
.telemetry-lab-panel h4 { margin: 0; font-size: 0.91rem; }
.telemetry-lab-button-row { display: flex; flex-wrap: wrap; gap: 7px; min-width: 0; }
.telemetry-lab-button-row > button { flex: 0 1 auto; }
.telemetry-lab-note, .telemetry-lab-scope-status, .telemetry-lab-event-detail { margin: 0; color: #bad0d9; font-size: 0.75rem; line-height: 1.47; }
.telemetry-lab-boundary { margin: 0; padding: 9px 12px; border-left: 3px solid var(--tl-warn); color: #d2dce1; background: rgba(239, 176, 119, 0.08); font-size: 0.73rem; line-height: 1.45; }

.telemetry-lab-monitor { border-color: rgba(85, 214, 190, 0.31); }
.telemetry-lab-scope {
  min-width: 0;
  padding: 9px 10px 7px;
  border: 1px solid rgba(85, 214, 190, 0.24);
  border-radius: 7px;
  background: #071922;
}
.telemetry-lab-scope[data-focus="true"] { border-color: var(--tl-accent); box-shadow: 0 0 0 2px rgba(85, 214, 190, 0.1); }
.telemetry-lab-scope-caption { margin-bottom: 4px; color: #98e0d5; font-size: 0.68rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; }
.telemetry-lab-scope svg { display: block; width: 100%; height: clamp(110px, 17vw, 155px); overflow: hidden; }
.telemetry-lab-grid line { stroke: rgba(85, 214, 190, 0.09); stroke-width: 1; }
.telemetry-lab-trace { fill: none; stroke: #65e3cd; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.telemetry-lab-sweep { stroke: rgba(226, 255, 247, 0.72); stroke-width: 2; vector-effect: non-scaling-stroke; animation: telemetry-lab-sweep 6s linear infinite; }
.telemetry-lab-scope[data-paused="true"] .telemetry-lab-sweep { animation-play-state: paused; }
.telemetry-lab .telemetry-lab-sweep-button { min-height: 28px; margin-top: 6px; padding: 3px 7px; color: #aeeadd; background: rgba(85, 214, 190, 0.08); font-size: 0.66rem; }
@keyframes telemetry-lab-sweep { from { transform: translateX(0); } to { transform: translateX(900px); } }
.telemetry-lab-guides line { stroke-width: 2; stroke-dasharray: 5 3; vector-effect: non-scaling-stroke; }
.telemetry-lab-guides .guide-start { stroke: var(--tl-blue); }
.telemetry-lab-guides .guide-end { stroke: var(--tl-warn); }
.telemetry-lab-guides .guide-selected { stroke: #fff2ab; stroke-width: 3; stroke-dasharray: none; }
.telemetry-lab-scope-status { margin-top: 5px; color: #93bbc3; font-size: 0.69rem; }
.telemetry-lab-patient { border-color: rgba(121, 186, 240, 0.35); background: rgba(21, 47, 65, 0.34); }
.telemetry-lab-patient p { margin: 0; color: #d6e2e8; font-size: 0.78rem; line-height: 1.5; }
.telemetry-lab-patient button { justify-self: start; }
.telemetry-lab-compare { border-color: rgba(121, 186, 240, 0.27); }
.telemetry-lab-compare button { justify-self: start; }
.telemetry-lab-capture-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 9px; }
.telemetry-lab-capture-card { display: grid; gap: 7px; min-width: 0; padding: 10px; border: 1px solid rgba(121, 186, 240, 0.24); border-radius: 7px; background: rgba(121, 186, 240, 0.05); }
.telemetry-lab-capture-card strong { color: #b2e7ec; font-size: 0.73rem; }
.telemetry-lab-capture-card p { margin: 0; color: #bdd0d9; font-size: 0.7rem; line-height: 1.4; }
.telemetry-lab-capture-card .telemetry-lab-scope svg { height: 88px; }

.telemetry-lab-sudden-handoff { border-color: rgba(85, 214, 190, 0.42); background: linear-gradient(140deg, rgba(85, 214, 190, 0.07), rgba(7, 18, 29, 0.68) 42%); }
.telemetry-lab-sudden-rows { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); gap: 8px; }
.telemetry-lab-sudden-row { display: grid; align-content: start; gap: 7px; min-width: 0; min-height: 105px; padding: 11px 12px; border: 1px solid rgba(239, 176, 119, 0.36); border-top: 3px solid var(--tl-warn); border-radius: 7px; background: rgba(239, 176, 119, 0.07); }
.telemetry-lab-sudden-row[data-pair="true"] { grid-column: 1 / -1; }
.telemetry-lab-sudden-row[data-complete="true"] { border-color: rgba(85, 214, 190, 0.38); border-top-color: var(--tl-accent); background: rgba(85, 214, 190, 0.07); }
.telemetry-lab-sudden-row strong { color: #ecf8f7; font-size: 0.75rem; }
.telemetry-lab-sudden-row p { margin: 0; color: #c5d7de; font-size: 0.73rem; line-height: 1.47; overflow-wrap: anywhere; }
.telemetry-lab-sudden-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; min-width: 0; }
.telemetry-lab-sudden-pair .telemetry-lab-scope svg { height: 96px; }
.telemetry-lab-sudden-pair .telemetry-lab-scope-caption { font-size: 0.63rem; }
.telemetry-lab-sudden-missing { display: grid; align-items: center; min-height: 128px; padding: 10px; border: 1px dashed rgba(239, 176, 119, 0.45); border-radius: 7px; background: rgba(239, 176, 119, 0.04); }
.telemetry-lab-sudden-controls { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 9px; }
.telemetry-lab-sudden-field { display: grid; align-content: start; gap: 5px; color: #d8e8e9; font-size: 0.73rem; font-weight: 750; }
.telemetry-lab-sudden-field select { width: 100%; min-height: 40px; padding: 8px 10px; border: 1px solid rgba(159, 201, 218, 0.45); border-radius: 7px; color: #e7f1f3; background: #152b39; font: inherit; font-weight: 600; }
.telemetry-lab-sudden-feedback { padding: 10px 12px; border-left: 3px solid var(--tl-blue); border-radius: 6px; background: rgba(121, 186, 240, 0.08); color: #d5e9ed; font-size: 0.74rem; line-height: 1.48; }
.telemetry-lab-sudden-feedback strong { color: #f0fbf8; }
.telemetry-lab-sudden-feedback p { margin: 6px 0 0; }
.telemetry-lab-sudden-feedback ul { margin: 8px 0 0; padding-left: 20px; }
.telemetry-lab-sudden-feedback li + li { margin-top: 5px; }
.telemetry-lab-qt-source { border-color: rgba(121, 186, 240, 0.43); background: linear-gradient(135deg, rgba(121, 186, 240, 0.08), rgba(7, 18, 29, 0.75) 45%); }
.telemetry-lab-qt-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.telemetry-lab-qt-view { display: grid; align-content: start; gap: 8px; min-width: 0; padding: 9px; border: 1px solid rgba(121, 186, 240, 0.27); border-radius: 7px; background: rgba(7, 25, 34, 0.7); }
.telemetry-lab-qt-view .telemetry-lab-scope svg { height: 105px; }
.telemetry-lab-qt-report { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 165px), 1fr)); gap: 8px; }
.telemetry-lab-qt-report-row { min-width: 0; min-height: 80px; padding: 9px 10px; border: 1px dashed rgba(239, 176, 119, 0.44); border-top: 3px solid var(--tl-warn); border-radius: 7px; background: rgba(239, 176, 119, 0.06); }
.telemetry-lab-qt-report-row[data-ready="true"] { border-style: solid; border-color: rgba(85, 214, 190, 0.4); border-top-color: var(--tl-accent); background: rgba(85, 214, 190, 0.07); }
.telemetry-lab-qt-report-row strong { display: block; color: #eaf7f4; font-size: 0.72rem; }
.telemetry-lab-qt-report-row p { margin: 6px 0 0; color: #c6d8df; font-size: 0.7rem; line-height: 1.45; overflow-wrap: anywhere; }
.telemetry-lab-qt-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 215px), 1fr)); gap: 9px; }
.telemetry-lab-qt-field { display: grid; gap: 6px; color: #d9e9e9; font-size: 0.72rem; font-weight: 750; }
.telemetry-lab-qt-field select { width: 100%; min-height: 40px; padding: 7px 9px; border: 1px solid rgba(159, 201, 218, 0.45); border-radius: 7px; color: #e7f1f3; background: #152b39; font: inherit; }
.telemetry-lab-qt-feedback { padding: 10px 11px; border-left: 3px solid var(--tl-blue); border-radius: 6px; color: #d5e9ed; background: rgba(121, 186, 240, 0.08); font-size: 0.74rem; line-height: 1.48; }
.telemetry-lab-qt-source[data-reviewable="true"] .telemetry-lab-qt-feedback { border-left-color: var(--tl-accent); }
.telemetry-lab-junction-report { border-color: rgba(85, 214, 190, 0.42); background: linear-gradient(135deg, rgba(85, 214, 190, 0.07), rgba(7, 18, 29, 0.73) 48%); }
.telemetry-lab-junction-windows { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; }
.telemetry-lab-junction-window { display: grid; align-content: start; gap: 7px; min-width: 0; padding: 9px; border: 1px dashed rgba(121, 186, 240, 0.37); border-radius: 7px; background: rgba(121, 186, 240, 0.05); }
.telemetry-lab-junction-window[data-saved="true"] { border-style: solid; background: rgba(85, 214, 190, 0.05); }
.telemetry-lab-junction-window[data-marked="true"] { border-color: var(--tl-warn); box-shadow: inset 0 0 0 1px rgba(239, 176, 119, 0.34); }
.telemetry-lab-junction-window strong { color: #e8f4f3; font-size: 0.73rem; line-height: 1.35; }
.telemetry-lab-junction-window p { margin: 0; color: #c4d7de; font-size: 0.7rem; line-height: 1.44; overflow-wrap: anywhere; }
.telemetry-lab-junction-window .telemetry-lab-scope { padding: 5px; }
.telemetry-lab-junction-window .telemetry-lab-scope svg { height: 83px; }
.telemetry-lab-junction-window small { padding-top: 6px; border-top: 1px dashed rgba(239, 176, 119, 0.4); color: #edc8a8; font-size: 0.63rem; line-height: 1.36; }
.telemetry-lab-junction-missing { display: grid; align-items: center; min-height: 100px; padding: 9px; border: 1px dashed rgba(239, 176, 119, 0.42); border-radius: 6px; background: rgba(239, 176, 119, 0.04); }
.telemetry-lab-junction-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 215px), 1fr)); gap: 9px; }
.telemetry-lab-junction-field { display: grid; gap: 6px; color: #d9e9e9; font-size: 0.72rem; font-weight: 750; }
.telemetry-lab-junction-field select { width: 100%; min-height: 40px; padding: 7px 9px; border: 1px solid rgba(159, 201, 218, 0.45); border-radius: 7px; color: #e7f1f3; background: #152b39; font: inherit; }
.telemetry-lab-junction-feedback { padding: 10px 11px; border-left: 3px solid var(--tl-blue); border-radius: 6px; color: #d5e9ed; background: rgba(121, 186, 240, 0.08); font-size: 0.74rem; line-height: 1.48; }
.telemetry-lab-junction-report[data-reviewable="true"] .telemetry-lab-junction-feedback { border-left-color: var(--tl-accent); }
.telemetry-lab-paced-comparison { border-color: rgba(121, 186, 240, 0.43); background: linear-gradient(140deg, rgba(121, 186, 240, 0.08), rgba(7, 18, 29, 0.75) 44%); }
.telemetry-lab-paced-windows { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.telemetry-lab-paced-window { display: grid; align-content: start; gap: 7px; min-width: 0; padding: 9px; border: 1px dashed rgba(121, 186, 240, 0.4); border-radius: 7px; background: rgba(121, 186, 240, 0.05); }
.telemetry-lab-paced-window[data-saved="true"] { border-style: solid; border-color: rgba(85, 214, 190, 0.4); background: rgba(85, 214, 190, 0.05); }
.telemetry-lab-paced-window[data-tagged="true"] { border-color: var(--tl-warn); box-shadow: inset 0 0 0 1px rgba(239, 176, 119, 0.3); }
.telemetry-lab-paced-window strong { color: #eaf6f5; font-size: 0.73rem; }
.telemetry-lab-paced-window p { margin: 0; color: #c4d7de; font-size: 0.7rem; line-height: 1.43; overflow-wrap: anywhere; }
.telemetry-lab-paced-window .telemetry-lab-scope { padding: 5px; }
.telemetry-lab-paced-window .telemetry-lab-scope svg { height: 92px; }
.telemetry-lab-paced-window small { padding-top: 6px; border-top: 1px dashed rgba(239, 176, 119, 0.42); color: #edc8a8; font-size: 0.63rem; line-height: 1.35; }
.telemetry-lab-paced-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 215px), 1fr)); gap: 9px; }
.telemetry-lab-paced-field { display: grid; gap: 6px; color: #d9e9e9; font-size: 0.72rem; font-weight: 750; }
.telemetry-lab-paced-field select { width: 100%; min-height: 40px; padding: 7px 9px; border: 1px solid rgba(159, 201, 218, 0.45); border-radius: 7px; color: #e7f1f3; background: #152b39; font: inherit; }
.telemetry-lab-paced-feedback { padding: 10px 11px; border-left: 3px solid var(--tl-blue); border-radius: 6px; color: #d5e9ed; background: rgba(121, 186, 240, 0.08); font-size: 0.74rem; line-height: 1.48; }
.telemetry-lab-paced-comparison[data-reviewable="true"] .telemetry-lab-paced-feedback { border-left-color: var(--tl-accent); }
.telemetry-lab-vf-response { border-color: rgba(239, 176, 119, 0.52); background: linear-gradient(140deg, rgba(239, 176, 119, 0.09), rgba(7, 18, 29, 0.78) 46%); }
.telemetry-lab-vf-lanes, .telemetry-lab-vf-record { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 185px), 1fr)); gap: 8px; }
.telemetry-lab-vf-lane, .telemetry-lab-vf-record-row { min-width: 0; min-height: 82px; padding: 9px 10px; border: 1px dashed rgba(239, 176, 119, 0.46); border-top: 3px solid var(--tl-warn); border-radius: 7px; background: rgba(239, 176, 119, 0.06); }
.telemetry-lab-vf-lane[data-ready="true"], .telemetry-lab-vf-record-row[data-saved="true"] { border-style: solid; border-color: rgba(85, 214, 190, 0.42); border-top-color: var(--tl-accent); background: rgba(85, 214, 190, 0.06); }
.telemetry-lab-vf-lane strong, .telemetry-lab-vf-record-row strong { display: block; color: #eaf6f3; font-size: 0.72rem; }
.telemetry-lab-vf-lane p, .telemetry-lab-vf-record-row p { margin: 6px 0 0; color: #c6d8df; font-size: 0.7rem; line-height: 1.44; overflow-wrap: anywhere; }
.telemetry-lab-vf-field { display: grid; gap: 6px; color: #d9e9e9; font-size: 0.72rem; font-weight: 750; }
.telemetry-lab-vf-field select { width: 100%; min-height: 40px; padding: 7px 9px; border: 1px solid rgba(159, 201, 218, 0.45); border-radius: 7px; color: #e7f1f3; background: #152b39; font: inherit; }
.telemetry-lab-vf-feedback { padding: 10px 11px; border-left: 3px solid var(--tl-blue); border-radius: 6px; color: #d5e9ed; background: rgba(121, 186, 240, 0.08); font-size: 0.74rem; line-height: 1.48; }
.telemetry-lab-vf-response[data-reviewable="true"] .telemetry-lab-vf-feedback { border-left-color: var(--tl-accent); }

.telemetry-lab-tach-panel { border-color: rgba(121, 186, 240, 0.43); background: linear-gradient(135deg, rgba(121, 186, 240, 0.08), rgba(7, 18, 29, 0.66) 45%); }
.telemetry-lab-tach-clock { width: 100%; min-width: 0; max-width: 100%; overflow-x: auto; padding: 3px 1px 11px; scrollbar-color: #69baa9 #132a31; }
.telemetry-lab-tach-track { display: flex; align-items: stretch; width: max-content; min-width: 100%; }
.telemetry-lab-tach-window { display: grid; align-content: start; gap: 6px; flex: 0 0 clamp(185px, 17vw, 225px); min-width: 0; padding: 8px; border: 1px solid rgba(121, 186, 240, 0.3); border-radius: 8px; background: rgba(8, 29, 39, .76); }
.telemetry-lab-tach-window[data-current="true"] { border-color: rgba(85, 214, 190, .78); box-shadow: inset 0 0 0 1px rgba(85, 214, 190, .2); }
.telemetry-lab .telemetry-lab-tach-time { display: grid; align-content: center; width: 100%; min-height: 50px; border-top: 3px solid rgba(159, 201, 218, 0.42); background: rgba(121, 186, 240, 0.06); font-size: 0.7rem; line-height: 1.35; }
.telemetry-lab .telemetry-lab-tach-time[data-saved="true"] { border-top-color: var(--tl-accent); }
.telemetry-lab .telemetry-lab-tach-time[data-marked="onset"] { border-top-color: var(--tl-blue); box-shadow: inset 0 0 0 1px rgba(121, 186, 240, 0.35); }
.telemetry-lab .telemetry-lab-tach-time[data-marked="termination"] { border-top-color: var(--tl-warn); box-shadow: inset 0 0 0 1px rgba(239, 176, 119, 0.35); }
.telemetry-lab .telemetry-lab-tach-time[aria-pressed="true"] { background: rgba(85, 214, 190, 0.16); }
.telemetry-lab-tach-window .telemetry-lab-scope { padding: 6px; }
.telemetry-lab-tach-window .telemetry-lab-scope svg { height: 86px; }
.telemetry-lab-tach-window .telemetry-lab-scope-caption { font-size: .59rem; }
.telemetry-lab-tach-window .telemetry-lab-scope-status { font-size: .62rem; }
.telemetry-lab-tach-hidden { display: grid; align-items: center; min-height: 120px; margin: 0; padding: 9px; border: 1px dashed rgba(121, 186, 240, .38); border-radius: 6px; color: #bed6df; background: rgba(121, 186, 240, .04); font-size: .68rem; line-height: 1.45; }
.telemetry-lab-tach-gap { display: grid; align-content: center; justify-items: center; gap: 6px; flex: 0 0 clamp(48px, 6vw, 85px); min-height: 190px; padding: 8px 3px; border-top: 1px dashed rgba(239, 176, 119, .6); border-bottom: 1px dashed rgba(239, 176, 119, .6); color: #f3c494; background: repeating-linear-gradient(45deg, rgba(239, 176, 119, .06) 0 5px, transparent 5px 10px); text-align: center; }
.telemetry-lab-tach-gap strong { font-size: .63rem; line-height: 1.3; }
.telemetry-lab-tach-gap span { font-size: .58rem; line-height: 1.35; }
.telemetry-lab-tach-report { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 205px), 1fr)); gap: 8px; }
.telemetry-lab-tach-report-card { display: grid; align-content: start; gap: 5px; min-width: 0; min-height: 88px; padding: 10px 11px; border: 1px solid rgba(239, 176, 119, 0.35); border-left: 3px solid var(--tl-warn); border-radius: 6px; background: rgba(239, 176, 119, 0.06); }
.telemetry-lab-tach-report-card[data-complete="true"] { border-color: rgba(85, 214, 190, 0.35); border-left-color: var(--tl-accent); background: rgba(85, 214, 190, 0.07); }
.telemetry-lab-tach-report-card strong { color: #eaf7f5; font-size: 0.72rem; }
.telemetry-lab-tach-report-card p { margin: 0; color: #c5d7de; font-size: 0.71rem; line-height: 1.45; overflow-wrap: anywhere; }

.telemetry-lab-av-sequence { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 155px), 1fr)); gap: 8px; }
.telemetry-lab .telemetry-lab-av-card { display: grid; align-content: space-between; gap: 8px; min-width: 0; min-height: 72px; border-color: rgba(121, 186, 240, 0.34); }
.telemetry-lab .telemetry-lab-av-card[aria-pressed="true"] { border-color: #fff2ab; box-shadow: inset 0 0 0 1px rgba(255, 242, 171, 0.42); }
.telemetry-lab-av-track { display: block; height: 8px; overflow: hidden; border: 1px solid rgba(159, 201, 218, 0.34); border-radius: 8px; background: #0a1b29; }
.telemetry-lab-av-fill { display: block; width: var(--av-span); height: 100%; border-radius: inherit; background: var(--tl-accent); }
.telemetry-lab-av-track[data-blocked="true"] { border-color: var(--tl-warn); background: repeating-linear-gradient(45deg, rgba(239, 176, 119, 0.25) 0 5px, transparent 5px 10px); }
.telemetry-lab-av-source { justify-self: start; color: #9ed6fb; font-size: 0.72rem; line-height: 1.45; }
.telemetry-lab-av-source:focus-visible { outline: 2px solid #b7f0e4; outline-offset: 3px; }

.telemetry-lab-calipers { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.telemetry-lab-calipers h4, .telemetry-lab-calipers .telemetry-lab-measurement, .telemetry-lab-calipers .telemetry-lab-button-row { grid-column: 1 / -1; }
.telemetry-lab-calipers label { display: grid; gap: 5px; color: #d9e7ea; font-size: 0.73rem; font-weight: 750; }
.telemetry-lab-calipers input[type="range"], .telemetry-lab-timeline input[type="range"] { width: 100%; accent-color: var(--tl-accent); cursor: pointer; }
.telemetry-lab-measurement { display: block; margin: 0; padding: 9px 11px; border: 1px solid rgba(85, 214, 190, 0.26); border-radius: 6px; color: #dffaf3; background: rgba(85, 214, 190, 0.08); font-size: 0.77rem; line-height: 1.45; }
.telemetry-lab-pr-pair { border-color: rgba(121, 186, 240, 0.43); background: linear-gradient(135deg, rgba(121, 186, 240, 0.09), rgba(7, 18, 29, 0.72) 46%); }
.telemetry-lab-pr-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.telemetry-lab-pr-card { display: grid; align-content: start; gap: 8px; min-width: 0; padding: 9px; border: 1px solid rgba(121, 186, 240, 0.32); border-radius: 7px; background: rgba(7, 25, 34, 0.72); }
.telemetry-lab-pr-card > strong { color: #e8f5f5; font-size: 0.73rem; }
.telemetry-lab-pr-card .telemetry-lab-scope { padding: 6px; }
.telemetry-lab-pr-card .telemetry-lab-scope svg { height: 110px; }
.telemetry-lab-pr-card .telemetry-lab-scope-status { font-size: 0.63rem; }
.telemetry-lab-pr-markers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.telemetry-lab-pr-marker { display: grid; gap: 4px; min-width: 0; color: #d9e7ea; font-size: 0.7rem; font-weight: 750; }
.telemetry-lab-pr-marker input { width: 100%; accent-color: var(--tl-accent); }
.telemetry-lab-pr-span { color: #c7e6e1; font-size: 0.7rem; }
.telemetry-lab-pr-readout { margin: 0; padding: 9px 11px; border: 1px solid rgba(85, 214, 190, 0.27); border-radius: 6px; color: #dffaf3; background: rgba(85, 214, 190, 0.07); font-size: 0.73rem; line-height: 1.46; }
.telemetry-lab-pr-feedback { margin: 0; padding: 9px 11px; border-left: 3px solid var(--tl-blue); border-radius: 6px; color: #d5e9ed; background: rgba(121, 186, 240, 0.08); font-size: 0.73rem; line-height: 1.47; }
.telemetry-lab-pr-pair[data-reviewable="true"] .telemetry-lab-pr-feedback { border-left-color: var(--tl-accent); }
.telemetry-lab-pr-model line { stroke-width: 2; stroke-dasharray: 2 2; vector-effect: non-scaling-stroke; }
.telemetry-lab-pr-model .model-p { stroke: #bdeeff; }
.telemetry-lab-pr-model .model-qrs { stroke: #ffd6ab; }

.telemetry-lab-timeline .telemetry-lab-button-row { display: grid; grid-template-columns: auto minmax(120px, 1fr) auto; align-items: center; }
.telemetry-lab-current-time { margin: 0; color: #dbf3ee; font-size: 0.86rem; font-weight: 800; }
.telemetry-lab-source-receipt { border-color: rgba(121, 186, 240, 0.4); background: rgba(121, 186, 240, 0.055); }
.telemetry-lab-source-receipt > button { justify-self: start; min-height: 44px; }
.telemetry-lab-source-pins { display: flex; gap: 7px; min-width: 0; max-width: 100%; overflow-x: auto; padding-bottom: 4px; }
.telemetry-lab .telemetry-lab-source-pin { flex: 0 0 135px; min-height: 44px; white-space: normal; overflow-wrap: anywhere; font-size: 0.7rem; }
.telemetry-lab-source-detail { min-width: 0; margin: 0; padding: 9px 11px; border-left: 3px solid var(--tl-blue); border-radius: 6px; color: #dceff1; background: rgba(121, 186, 240, 0.09); font-size: 0.73rem; line-height: 1.48; overflow-wrap: anywhere; }
.telemetry-lab-source-boundaries { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; }
.telemetry-lab-source-boundaries:empty { display: none; }
.telemetry-lab-source-boundary { min-width: 0; padding: 7px 9px; border: 1px solid rgba(239, 176, 119, 0.42); border-radius: 6px; color: #f5d8b8; background: rgba(239, 176, 119, 0.07); font-size: 0.69rem; line-height: 1.4; overflow-wrap: anywhere; }
.telemetry-lab-source-boundary[data-checked="true"] { border-color: rgba(85, 214, 190, 0.46); color: #c9f5e8; background: rgba(85, 214, 190, 0.08); }
.telemetry-lab-flow { display: flex; flex-wrap: wrap; gap: 6px; }
.telemetry-lab-flow span { padding: 6px 8px; border: 1px solid rgba(160, 190, 210, 0.27); border-radius: 100px; color: #aebec9; font-size: 0.67rem; font-weight: 800; }
.telemetry-lab-flow .is-done { border-color: rgba(85, 214, 190, 0.58); color: #9befdc; background: rgba(85, 214, 190, 0.11); }
.telemetry-lab-bed-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; }
.telemetry-lab-bed-grid button { min-height: 66px; border-left: 3px solid var(--tl-warn); }
.telemetry-lab-bed-grid button[data-covered="true"] { border-left-color: var(--tl-accent); }
.telemetry-lab-first-response { border-color: rgba(121, 186, 240, 0.36); background: rgba(121, 186, 240, 0.06); }
.telemetry-lab-first-response .telemetry-lab-button-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.telemetry-lab-first-review { display: grid; gap: 7px; padding: 10px 11px; border-left: 3px solid var(--tl-accent); border-radius: 6px; background: rgba(85, 214, 190, 0.09); }
.telemetry-lab-first-review strong { color: #dffaf3; font-size: 0.76rem; }
.telemetry-lab-first-review p { margin: 0; color: #c5dce3; font-size: 0.74rem; line-height: 1.48; }
.telemetry-lab-first-response > button { justify-self: start; }

.telemetry-lab-chart { min-width: 0; padding: 4px; border: 1px solid rgba(85, 214, 190, 0.18); border-radius: 7px; background: #071922; }
.telemetry-lab-chart svg { display: block; width: 100%; height: clamp(130px, 21vw, 220px); }
.telemetry-lab-chart-grid { stroke: rgba(121, 186, 240, 0.18); stroke-width: 1; }
.telemetry-lab-chart-line { fill: none; stroke: var(--tl-blue); stroke-width: 3; vector-effect: non-scaling-stroke; }
.telemetry-lab-chart-point { fill: var(--tl-blue); }
.telemetry-lab-chart-selected { fill: var(--tl-warn); stroke: #fff; stroke-width: 2; }
.telemetry-lab-chart-event { fill: rgba(121, 186, 240, 0.55); stroke: #8accf4; stroke-width: 2; }
.telemetry-lab-chart-event-selected { fill: rgba(239, 176, 119, 0.78); stroke: #fff1d9; stroke-width: 3; }
.telemetry-lab-chart-value { fill: #e9f4f6; font: 800 18px system-ui; }
.telemetry-lab-chart-time { fill: #c5d9e3; font: 700 16px system-ui; }
.telemetry-lab-trend-retained { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.telemetry-lab-trend-retained li { padding: 9px 10px; border-left: 3px solid var(--tl-blue); border-radius: 6px; color: #dcebf0; background: rgba(121, 186, 240, 0.08); font-size: 0.74rem; line-height: 1.45; overflow-wrap: anywhere; }
.telemetry-lab-shift-report { border-color: rgba(85, 214, 190, 0.45); background: linear-gradient(145deg, rgba(85, 214, 190, 0.07), rgba(7, 18, 29, 0.78) 48%); }
.telemetry-lab-shift-rows { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap: 9px; }
.telemetry-lab-shift-row { min-width: 0; min-height: 95px; padding: 10px 11px; border: 1px dashed rgba(239, 176, 119, 0.47); border-top: 3px solid var(--tl-warn); border-radius: 7px; background: rgba(239, 176, 119, 0.06); }
.telemetry-lab-shift-row[data-retained="true"] { border-style: solid; border-color: rgba(85, 214, 190, 0.42); border-top-color: var(--tl-accent); background: rgba(85, 214, 190, 0.07); }
.telemetry-lab-shift-row strong { display: block; color: #eaf7f4; font-size: 0.73rem; }
.telemetry-lab-shift-row p { margin: 6px 0 0; color: #c6d8df; font-size: 0.7rem; line-height: 1.44; overflow-wrap: anywhere; }
.telemetry-lab-shift-fields { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 215px), 1fr)); gap: 9px; }
.telemetry-lab-shift-field { display: grid; gap: 6px; color: #d9e9e9; font-size: 0.72rem; font-weight: 750; }
.telemetry-lab-shift-field select { width: 100%; min-height: 40px; padding: 7px 9px; border: 1px solid rgba(159, 201, 218, 0.45); border-radius: 7px; color: #e7f1f3; background: #152b39; font: inherit; }
.telemetry-lab-shift-feedback { padding: 10px 11px; border-left: 3px solid var(--tl-blue); border-radius: 6px; color: #d5e9ed; background: rgba(121, 186, 240, 0.08); font-size: 0.74rem; line-height: 1.48; }
.telemetry-lab-shift-report[data-reviewable="true"] .telemetry-lab-shift-feedback { border-left-color: var(--tl-accent); }

.telemetry-lab-event-list { display: grid; grid-template-columns: minmax(0, 190px) minmax(0, 1fr); gap: 8px 10px; align-items: stretch; }
.telemetry-lab-event-button { border-left: 3px solid var(--tl-blue) !important; }
.telemetry-lab-event-button[aria-pressed="true"] { border-left-color: var(--tl-accent) !important; }
.telemetry-lab-event-detail { display: flex; align-items: center; min-height: 38px; padding: 7px 9px; border-radius: 6px; background: rgba(121, 186, 240, 0.06); }
.telemetry-lab-handoff-coverage-status { margin: 0; color: #dffaf3; font-size: 0.77rem; line-height: 1.5; }
.telemetry-lab-handoff-coverage-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.telemetry-lab-handoff-coverage-item { min-width: 0; padding: 9px 10px; border: 1px solid rgba(121, 186, 240, 0.28); border-left: 3px solid var(--tl-blue); border-radius: 7px; background: rgba(121, 186, 240, 0.06); overflow-wrap: anywhere; }
.telemetry-lab-handoff-coverage-item[data-state="included"] { border-left-color: var(--tl-accent); }
.telemetry-lab-handoff-coverage-item[data-state="partial"], .telemetry-lab-handoff-coverage-item[data-state="unresolved"] { border-left-color: var(--tl-warn); }
.telemetry-lab-handoff-coverage-item strong { display: block; color: #e0eff2; font-size: 0.74rem; line-height: 1.4; }
.telemetry-lab-handoff-coverage-item p { margin: 5px 0 0; color: #bad0d9; font-size: 0.71rem; line-height: 1.45; }

.telemetry-lab-body-map {
  position: relative;
  width: min(100%, 300px);
  aspect-ratio: 1.15;
  margin: 1px auto;
  border: 1px solid rgba(121, 186, 240, 0.22);
  border-radius: 24% 24% 36% 36%;
  background: linear-gradient(115deg, rgba(121, 186, 240, 0.17), rgba(85, 214, 190, 0.08)), #122b3a;
}
.telemetry-lab-body-map::before { content: ""; position: absolute; inset: 12% 34% 0; border-left: 1px dashed rgba(255, 255, 255, 0.12); border-right: 1px dashed rgba(255, 255, 255, 0.12); }
.telemetry-lab .telemetry-lab-pad { position: absolute; display: grid; place-items: center; width: 38px; min-height: 38px; height: 38px; padding: 0; border: 2px solid #a8e6df; border-radius: 50%; color: #f3fcfa; background: #19545a; box-shadow: 0 0 0 5px rgba(85, 214, 190, 0.12); font-size: 0.63rem; font-weight: 850; text-align: center; }
.telemetry-lab .telemetry-lab-pad[aria-pressed="true"] { border-color: #f3b675; background: #765039; box-shadow: 0 0 0 7px rgba(239, 176, 119, 0.2); }
.telemetry-lab-pad-ra { top: 14%; left: 9%; }
.telemetry-lab-pad-la { top: 14%; right: 9%; }
.telemetry-lab-pad-v1 { top: 37%; left: 39%; }
.telemetry-lab-pad-rl { bottom: 10%; right: 21%; }
.telemetry-lab-pad-ll { bottom: 10%; left: 21%; }
.telemetry-lab-conduction-network { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 7px; align-items: stretch; }
.telemetry-lab-conduction-node { position: relative; display: grid; place-items: center; min-height: 71px; padding: 7px; border: 1px solid rgba(121, 186, 240, 0.28); border-radius: 8px; color: #a9c0cc; background: rgba(121, 186, 240, 0.06); font-size: 0.7rem; font-weight: 750; text-align: center; }
.telemetry-lab-conduction-node[data-active="true"] { border-color: rgba(85, 214, 190, 0.7); color: #e1fff6; background: rgba(85, 214, 190, 0.18); box-shadow: 0 0 16px rgba(85, 214, 190, 0.08); }
.telemetry-lab-conduction-node[data-blocked="true"] { border-color: rgba(239, 176, 119, 0.8); color: #ffe9cd; background: rgba(239, 176, 119, 0.18); }
.telemetry-lab-conduction-node:not(:last-child)::after { content: "›"; position: absolute; right: -9px; z-index: 1; color: #a5c8d4; font-size: 1.1rem; }

@media (max-width: 640px) {
  .telemetry-lab { padding: 13px; }
  .telemetry-lab-panel { padding: 11px; }
  .telemetry-lab-calipers { grid-template-columns: 1fr; }
  .telemetry-lab-pr-grid, .telemetry-lab-pr-markers { grid-template-columns: 1fr; }
  .telemetry-lab-timeline .telemetry-lab-button-row { grid-template-columns: 1fr 1fr; }
  .telemetry-lab-timeline input[type="range"] { grid-column: 1 / -1; grid-row: 1; }
  .telemetry-lab-event-list { grid-template-columns: 1fr; }
  .telemetry-lab-first-response .telemetry-lab-button-row { grid-template-columns: 1fr; }
  .telemetry-lab-event-detail { margin-top: -5px; }
  .telemetry-lab-sudden-pair { grid-template-columns: 1fr; }
  .telemetry-lab-qt-pair { grid-template-columns: 1fr; }
  .telemetry-lab-junction-windows { grid-template-columns: 1fr; }
  .telemetry-lab-paced-windows { grid-template-columns: 1fr; }
  .telemetry-lab-conduction-network { grid-template-columns: 1fr; }
  .telemetry-lab-conduction-node { min-height: 42px; }
  .telemetry-lab-conduction-node:not(:last-child)::after { content: "⌄"; right: auto; bottom: -13px; }
}
@media (prefers-reduced-motion: reduce) {
  .telemetry-lab-sweep { animation: none; display: none; }
  .telemetry-lab .telemetry-lab-sweep-button { display: none; }
  .telemetry-lab button { transition: none; }
}
