/* pra-converter-map — generated by scripts/tools-v2/build-tool-css.js from
   views/v1-backup/tools-pra-converter-map.ejs. DO NOT EDIT BY HAND: npm run test:tools-page-v2
   regenerates it and fails if this file has drifted.

   The shared vocabulary (.btn-primary, .form-input, .tool-card, .badge-*,
   .toast-*, #map, headings) is NOT here — public/css/tools-page-v2.css
   declares it once for every tool page. What is left is this tool's own,
   with its colour literals resolved to theme tokens and every selector
   scoped to the tool body so nothing reaches the shared header. */

.tpv2-body #mapContainer {
  height: 700px;
  width: 100%;
  position: relative;
  border-radius: 0.5rem;
  overflow: hidden;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.tpv2-body .leaflet-control-coordinates {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(255, 255, 255, 0.9);
  color: var(--sk-text);
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
  font-family: monospace;
  font-size: 0.875rem;
  z-index: 999;
  pointer-events: none;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  font-weight: 600;
}

.tpv2-body #chernarusBtn.active-map,
.tpv2-body #livoniaBtn.active-map,
.tpv2-body #sakhalBtn.active-map {
  background-color: var(--sk-info);
  color: white;
  font-weight: 600;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.tpv2-body .leaflet-marker-icon {
  transition: none !important;
}

.tpv2-body .custom-marker-icon {
  background: none !important;
  border: none !important;
}

.tpv2-body .pra-marker {
  background-color: var(--sk-danger) !important;
  border: 2px solid white !important;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.2s ease;
}

.tpv2-body .pra-marker:hover {
  transform: scale(1.5);
  z-index: 10000 !important;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.6);
}

.tpv2-body .pra-marker .marker-number {
  color: white;
  font-weight: bold;
  font-size: 9px;
  line-height: 1;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
}

.tpv2-body .pra-marker.selected {
  background-color: var(--sk-warning) !important;
  border-color: var(--sk-warning) !important;
  animation: pulse 1s infinite;
  transform: scale(1.3);
}

.tpv2-body .pra-marker.paired-color-0 {
  background-color: var(--sk-danger) !important;
  border-color: var(--sk-danger) !important;
}

.tpv2-body .pra-marker.paired-color-1 {
  background-color: var(--sk-warning) !important;
  border-color: var(--sk-warning) !important;
}

.tpv2-body .pra-marker.paired-color-2 {
  background-color: var(--sk-warning) !important;
  border-color: var(--sk-warning) !important;
}

.tpv2-body .pra-marker.paired-color-3 {
  background-color: var(--sk-success) !important;
  border-color: var(--sk-success) !important;
}

.tpv2-body .safe-marker {
  background-color: var(--sk-info) !important;
  border: 2px solid white !important;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  cursor: pointer;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.2s ease;
}

.tpv2-body .safe-marker:hover {
  transform: scale(1.5);
  z-index: 10000 !important;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.6);
}

.tpv2-body .safe-marker .marker-number {
  color: white;
  font-weight: bold;
  font-size: 9px;
  line-height: 1;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
}

.tpv2-body .safe-marker.paired-color-0 {
  background-color: var(--sk-danger) !important;
  border-color: var(--sk-danger) !important;
}

.tpv2-body .safe-marker.paired-color-1 {
  background-color: var(--sk-warning) !important;
  border-color: var(--sk-warning) !important;
}

.tpv2-body .safe-marker.paired-color-2 {
  background-color: var(--sk-warning) !important;
  border-color: var(--sk-warning) !important;
}

.tpv2-body .safe-marker.paired-color-3 {
  background-color: var(--sk-success) !important;
  border-color: var(--sk-success) !important;
}

@keyframes pulse {
  0%, 100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--sk-warning) 70%, transparent); }
  50% { box-shadow: 0 0 0 10px color-mix(in srgb, var(--sk-warning) 0%, transparent); }
}

.tpv2-body .pairing-line {
  animation: dash 1s linear infinite;
}

@keyframes dash {
  to { stroke-dashoffset: -20; }
}
