.dsc-traffic-heatmap-canvas {
  pointer-events: none;
  opacity: 0.86;
}

.dsc-traffic-heatmap-legend {
  width: min(260px, calc(100vw - 28px));
  margin-bottom: 86px !important;
  padding: 10px 11px;
  border: 1px solid rgba(148, 163, 184, 0.32);
  border-radius: 8px;
  background: rgba(11, 18, 32, 0.88);
  color: #f8fafc;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28);
  font-size: 12px;
  line-height: 1.32;
  backdrop-filter: blur(8px);
  position: relative;
  z-index: 3600;
  pointer-events: auto;
}

.dsc-traffic-heatmap-title {
  font-weight: 700;
  margin-bottom: 7px;
}

.dsc-traffic-heatmap-filter-label {
  margin-bottom: 5px;
  color: rgba(248, 250, 252, 0.78);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
}

.dsc-traffic-heatmap-filters {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
  margin-bottom: 8px;
}

.dsc-traffic-heatmap-filter {
  min-width: 0;
  padding: 5px 3px;
  border: 1px solid rgba(148, 163, 184, 0.38);
  border-radius: 6px;
  background: rgba(15, 23, 42, 0.72);
  color: rgba(248, 250, 252, 0.86);
  font: inherit;
  font-size: 10.5px;
  line-height: 1.1;
  cursor: pointer;
}

.dsc-traffic-heatmap-filter.active {
  border-color: rgba(255, 196, 87, 0.9);
  background: rgba(255, 196, 87, 0.2);
  color: #fff7ed;
  font-weight: 700;
}

.dsc-traffic-heatmap-scale {
  height: 9px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(74, 163, 255, 0.9), rgba(169, 103, 255, 0.95), rgba(255, 196, 87, 0.98));
}

.dsc-traffic-heatmap-scale-labels {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-top: 4px;
  color: rgba(248, 250, 252, 0.82);
  font-size: 11px;
}

.dsc-traffic-heatmap-period {
  margin-top: 7px;
  color: rgba(248, 250, 252, 0.9);
}

.dsc-traffic-heatmap-status {
  margin-top: 7px;
  padding: 6px 7px;
  border-radius: 6px;
  background: rgba(15, 23, 42, 0.72);
  color: #dbeafe;
}

.dsc-traffic-heatmap-note {
  margin-top: 7px;
  color: rgba(226, 232, 240, 0.76);
  font-size: 11px;
}

.dsc-traffic-popup {
  min-width: 190px;
  font-size: 12px;
  line-height: 1.35;
}

.dsc-traffic-popup hr {
  margin: 7px 0;
  border: 0;
  border-top: 1px solid rgba(148, 163, 184, 0.35);
}

.dsc-traffic-popup small {
  display: block;
  margin-top: 5px;
  color: #64748b;
}

@media (max-width: 700px) {
  .dsc-traffic-heatmap-legend {
    width: min(236px, calc(100vw - 24px));
    margin-bottom: 72px !important;
    padding: 8px 9px;
    font-size: 11px;
  }

  .dsc-traffic-heatmap-note {
    display: none;
  }

  .dsc-traffic-heatmap-filter {
    padding-inline: 2px;
    font-size: 10px;
  }
}
