/* ── Stats page layout ─────────────────────────────────────────────────── */

.statsHeaderLeft {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.statsTitleStack {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

/* Prevent long status text from forcing header wrap */
#statsStatus {
  max-width: 52ch;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Stats page: make chart fill remaining viewport height */
.containerFull {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.cardFill {
  flex: 1 1 auto;
  min-height: 320px;
  display: flex;
}

.chartFill {
  flex: 1 1 auto;
  min-height: 0;
}

.chartFill canvas {
  width: 100% !important;
  height: 100% !important;
}

/* ── Stats dual range slider: custom track + fill ──────────────────────── */

.rangeDual {
  position: relative;
  flex: 1 1 auto;
  width: 100%;
  height: 18px;
}

.rangeDual .rangeTrack,
.rangeDual .rangeFill {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 6px;
  border-radius: 999px;
}

.rangeDual .rangeTrack {
  left: 0;
  right: 0;
  background: var(--border);
}

.rangeDual .rangeFill {
  left: 0;
  right: 0;
  background: #37566b;
}

.rangeDual input[type="range"] {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 18px;
  margin: 0;
  background: transparent;
  pointer-events: none;
  -webkit-appearance: none;
  appearance: none;
}

.rangeDual input[type="range"]::-webkit-slider-runnable-track { background: transparent; }
.rangeDual input[type="range"]::-webkit-slider-thumb { pointer-events: all; }

.rangeDual input[type="range"]::-moz-range-track { background: transparent; }
.rangeDual input[type="range"]::-moz-range-progress { background: transparent; }
.rangeDual input[type="range"]::-moz-range-thumb { pointer-events: all; }

@media (prefers-color-scheme: light) {
  .rangeDual .rangeFill { background: #3d7fa8; }
}

html[data-theme="light"] .rangeDual .rangeFill { background: #3d7fa8; }
html[data-theme="dark"] .rangeDual .rangeFill { background: #37566b; }
