.construction-page .gauge { width: 76px; height: 72px; }
.construction-page .gauge-meta b { font-size: 23px; }
.construction-page .line-chart { height: 46px; }
.construction-page .line-chart.sm { height: 32px; }
.construction-page .vent-top { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 6px; }
.construction-page .vent-top .metric b { font-size: 15px; }
.construction-page .construction-info { width: 218px; }
.construction-page .progress-metrics .metric b { font-size: 17px; }
.construction-page .progress-line {
  display: flex;
  justify-content: space-between;
  margin-top: 6px;
  padding: 4px 6px;
  border: 1px dashed rgba(74, 168, 255, 0.16);
  font-size: 9.5px;
  color: var(--muted);
}
.construction-page .progress-line b { color: #dff1ff; font-family: var(--mono); font-weight: 500; }
.construction-page .gas-fans {
  display: flex;
  justify-content: space-between;
  font-size: 9.5px;
  color: var(--muted);
  margin: 6px 0 2px;
}
.construction-page .gas-fans b { color: #dff1ff; font-family: var(--mono); font-weight: 500; }

.people-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 8.5px;
  letter-spacing: 0.4px;
  color: #ffd7a8;
  border: 1px solid rgba(255, 159, 67, 0.38);
  background: rgba(255, 159, 67, 0.08);
  padding: 1px 6px;
  border-radius: 2px;
  white-space: nowrap;
}
.people-badge i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--orange);
  box-shadow: 0 0 6px var(--orange);
  animation: blink 1.6s infinite;
}
.people-badge b { color: #fff3e2; font-family: var(--mono); font-weight: 500; }

.tag.tag-worker {
  border-left-color: #ff9a4d;
  background: rgba(44, 22, 8, 0.82);
  padding: 1px 6px;
  gap: 4px;
}
.tag-worker b { color: #ffb877; }
.tag-worker span { color: #b98d66; }
.tag-worker i { background: #ff9a4d; }

.settle-bar {
  background: linear-gradient(90deg, #1f7ae0, #22c9c0 30%, #ffe066 55%, #ff7a45 78%, #ff2d45);
}

.stage-legend {
  position: absolute;
  left: 12px;
  bottom: 14px;
  z-index: 3;
  background: rgba(6, 16, 26, 0.8);
  border: 1px solid var(--line);
  padding: 6px 8px 7px;
  display: none;
  pointer-events: none;
}
.stage-legend.show { display: block; }
.stage-legend-items { display: flex; gap: 10px; margin-top: 5px; }
.stage-legend-items span { display: flex; align-items: center; gap: 4px; font-size: 9px; color: var(--muted); }
.stage-legend-items i { width: 7px; height: 7px; border-radius: 1px; }

@media (max-height: 980px) {
  .construction-page .gauge { width: 68px; height: 64px; }
  .construction-page .line-chart.sm { height: 28px; }
}
