* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  background-color: #0a0e1a;
  color: #e0e6f0;
  min-height: 100vh;
  overflow: hidden;
}

::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-track {
  background: #0a0e1a;
}
::-webkit-scrollbar-thumb {
  background: #1e3a5f;
  border-radius: 3px;
}

.status-red { color: #e63946; font-weight: 700; }
.status-yellow { color: #f4a261; font-weight: 700; }
.status-green { color: #2a9d8f; font-weight: 700; }

.sound-mute-btn {
  background: none;
  border: 1px solid #1e3a5f;
  color: #e0e6f0;
  font-size: 16px;
  cursor: pointer;
  padding: 2px 6px;
  border-radius: 4px;
  margin-right: 8px;
  vertical-align: middle;
  line-height: 1;
}
.sound-mute-btn:hover {
  background: #1e3a5f;
}
.sound-mute-btn.muted {
  opacity: 0.5;
}

.map-tools-bar {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 16px;
  font-size: 12px;
}
.map-tools-label {
  color: #8899aa;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 11px;
}
.map-tools-sep {
  color: #1e3a5f;
  margin: 0 2px;
}
.map-tool-btn {
  background: #12203a;
  border: 1px solid #1e3a5f;
  color: #e0e6f0;
  padding: 3px 10px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
}
.map-tool-btn:hover {
  background: #1e3a5f;
}
.hot-zone-btn { border-color: #e63946; color: #e63946; }
.hot-zone-btn:hover { background: #e6394622; }
.warm-zone-btn { border-color: #f4a261; color: #f4a261; }
.warm-zone-btn:hover { background: #f4a26122; }
.cold-zone-btn { border-color: #2a9d8f; color: #2a9d8f; }
.cold-zone-btn:hover { background: #2a9d8f22; }
.staging-btn { border-color: #f4a261; color: #f4a261; }
.staging-btn:hover { background: #f4a26122; }
.marker-btn { border-color: #6eb5ff; color: #6eb5ff; }
.marker-btn:hover { background: #6eb5ff22; }

.plume-gas .plume-shape {
  background: linear-gradient(180deg, rgba(155, 89, 182, 0.85) 0%, rgba(155, 89, 182, 0.15) 100%);
}
.plume-smoke .plume-shape {
  background: linear-gradient(180deg, rgba(120, 120, 120, 0.85) 0%, rgba(120, 120, 120, 0.15) 100%);
}
.plume-thermal .plume-shape {
  background: linear-gradient(180deg, rgba(230, 57, 70, 0.8) 0%, rgba(244, 162, 97, 0.15) 100%);
}
.plume-chemical .plume-shape {
  background: linear-gradient(180deg, rgba(244, 162, 97, 0.85) 0%, rgba(244, 162, 97, 0.15) 100%);
}

.hazard-marker[data-radius] {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  padding: 0;
  overflow: hidden;
  white-space: normal;
  word-break: break-word;
}

.board-bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 0;
  pointer-events: none;
}
