#gameCanvas {
  display: block;
  width: 100%;
  max-width: 360px;
  margin: 0 auto;
}

/* ── HUD ── */
.fortress-hud {
  display: flex;
  gap: 4px;
  margin-bottom: 10px;
}
.hud-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 5px 4px;
  background: rgba(255,255,255,.04);
  border-radius: 6px;
}
.hud-label {
  font-family: "Courier New", Consolas, monospace;
  font-size: 10px;
  color: rgba(255,255,255,.38);
  letter-spacing: .05em;
}
.hud-val {
  font-family: "Courier New", Consolas, monospace;
  font-weight: 700;
  font-size: 13px;
}
.hud-score { color: var(--cyan); }
.hud-timer { color: var(--yellow); transition: color 300ms; }
.hud-timer.hud-urgent { color: #ff6060; animation: timer-pulse 1s ease-in-out infinite; }
@keyframes timer-pulse { 0%,100%{opacity:1} 50%{opacity:.5} }

/* ── 남은 탄 ── */
.fortress-shots {
  text-align: center;
  font-size: 15px;
  letter-spacing: 2px;
  padding: 6px 0 2px;
  min-height: 26px;
}

/* ── 컨트롤 ── */
.fortress-controls {
  margin-top: 10px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.slider-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.slider-label {
  font-family: "Courier New", Consolas, monospace;
  font-size: 12px;
  color: rgba(255,255,255,.55);
  min-width: 76px;
  flex-shrink: 0;
}
.slider-label strong {
  color: var(--cyan);
}
.fortress-slider {
  flex: 1;
  accent-color: var(--cyan);
  cursor: pointer;
  height: 4px;
}

/* ── 발사 버튼 ── */
.fire-btn {
  background: linear-gradient(180deg, #ff7040, #e03000) !important;
  font-weight: 700;
  font-size: 15px;
  letter-spacing: .04em;
  margin-top: 2px;
}
.fire-btn:disabled {
  background: rgba(255,255,255,.08) !important;
  color: rgba(255,255,255,.3);
  cursor: not-allowed;
}
