/* A restrained motorsport telemetry accent shared by the Master and TV timing views. */
.lap-progress{min-width:0;margin:0 0 10px;padding:9px 14px 11px;
  background:#101720;border:1px solid #303d4b;border-radius:6px;
  font-variant-numeric:tabular-nums;box-shadow:inset 0 1px #ffffff05}
.lap-progress-caption{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin-bottom:9px;color:#9daec0;font:700 9px/1.25 Inter,system-ui,sans-serif;
  letter-spacing:.115em;white-space:nowrap}
.lap-progress-readout{color:#bac9d5;text-align:right;letter-spacing:.065em;
  font-weight:650;overflow:hidden;text-overflow:ellipsis}
.lap-progress-track{position:relative;height:4px;background:#283440;border-radius:10px;overflow:visible}
.lap-progress-track::after{content:"";position:absolute;inset:0;border-radius:10px;
  box-shadow:inset 0 1px 2px #03060888;pointer-events:none}
.lap-progress-fill{position:absolute;inset:0;border-radius:10px;transform:scaleX(0);
  transform-origin:left center;background:#54606e}
.lap-progress-marker{position:absolute;left:0;top:50%;width:8px;height:8px;border:1.5px solid #dce6eb;
  transform:translate(-50%,-50%);border-radius:50%;background:#54606e;
  box-shadow:0 0 0 2px #101720;opacity:0;pointer-events:none}
.lap-progress:not([data-state="waiting"]) .lap-progress-marker{opacity:1}
.lap-progress[data-state="held"]{border-color:#384350}
.lap-progress[data-state="held"] .lap-progress-fill,
.lap-progress[data-state="held"] .lap-progress-marker{opacity:.52}
.lap-progress[data-state="held"] .lap-progress-readout,
.lap-progress[data-state="waiting"] .lap-progress-readout{color:#8292a3}
.lap-progress[data-state="throttle"] .lap-progress-readout{color:#85bca7}
.lap-progress[data-state="brake"] .lap-progress-readout{color:#dda3a7}
#master-overview>.lap-progress{margin-bottom:10px}
.spectator-panel>.lap-progress{margin:0;border-radius:6px;padding:9px clamp(12px,1.1vw,23px) 12px;
  background:linear-gradient(100deg,#101720,#111b24);border-color:#344152}
.spectator-panel .lap-progress-caption{font-size:clamp(9px,.7vw,13px);margin-bottom:9px}
.spectator-panel .lap-progress-track{height:4px}
@media(max-width:600px){
  .lap-progress{padding:8px 10px 11px}
  .lap-progress-caption{font-size:9px;gap:6px}
  .spectator-panel .lap-progress-caption{font-size:9px}
}


/* One shared strip for Inputs, Timing, Both and Live vs Best.
   The first grid row remains compact; charts retain the remaining height. */
body:not([data-view="spectator"]) .display-content {
  grid-template-rows: auto minmax(0, 1fr);
  row-gap: clamp(8px, 1.1vh, 16px);
}
.display-content > .viewing-lap-progress {
  grid-column: 1 / -1;
  grid-row: 1;
  margin: 0;
  min-width: 0;
  padding: 8px clamp(12px, 1.4vw, 24px) 10px;
  border-color: #354152;
  background: linear-gradient(90deg,#101720,#111922);
}
.display-content > .viewing-lap-progress .lap-progress-caption {
  margin-bottom: 8px;
}
body[data-view="trace"] .input-panel,
body[data-view="timing"] .lap-panel,
body[data-view="live-best"] #live-best-panel {
  grid-row: 2;
  min-height: 0;
}
body[data-view="combined"] .input-panel,
body[data-view="combined"] .lap-panel {
  grid-row: 2;
  min-height: 0;
}
body[data-view="combined"] .input-panel { grid-column: 1; }
body[data-view="combined"] .lap-panel { grid-column: 2; }
@media (max-width:800px) {
  body[data-view="combined"] .display-content {
    grid-template-rows: auto minmax(140px,1fr) minmax(270px,1.2fr);
  }
  body[data-view="combined"] .input-panel { grid-row: 2; grid-column: 1; }
  body[data-view="combined"] .lap-panel { grid-row: 3; grid-column: 1; }
}
@media (max-width:480px) {
  .display-content > .viewing-lap-progress { padding: 8px 11px 10px; }
}
