#map {
  background: #f8f9fa;
  border: 1px solid #dee2e6;
  border-radius: 4px;
}
.postcode-marker {
  font-size: 20px;
  text-align: center;
  line-height: 1;
}
.leaflet-container {
  background: #f8f9fa !important;
  cursor: crosshair !important;
}
.leaflet-container path {
  cursor: crosshair !important;
}
/* Custom radio styles for assessment type */
.custom-radio-label {
  display: flex;
  align-items: center;
  font-weight: 500;
  cursor: pointer;
  margin-bottom: 0.5rem;
  font-size: 1rem;
}
.custom-radio-input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.custom-radio-indicator {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #5b2a86;
  background: #fff;
  margin-right: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s, background 0.2s;
  position: relative;
}
.custom-radio-input:checked + .custom-radio-indicator {
  background: #5b2a86;
  border-color: #5b2a86;
}
.custom-radio-indicator::after {
  content: '';
  display: none;
}
.custom-radio-input:checked + .custom-radio-indicator::after {
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6 12.5L10.5 17L18 9.5" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/></svg>') no-repeat center center;
  background-size: 16px 16px;
}
/* Style for the question card and all custom card bodies */
.assessment-type-section .card-body {
  background: #eaf6fb;
  border-radius: 8px;
}
.assessment-type-section .card-title {
  color: #3a2066;
  font-weight: 700;
}

.coordinate-display {
    background: rgba(255, 255, 255, 0.9);
    padding: 6px 10px;
    border-radius: 4px;
    border: 1px solid #ccc;
    font-size: 12px;
    font-family: monospace;
    box-shadow: 0 1px 5px rgba(0,0,0,0.2);
}

.gap-2 {
  gap: .5rem !important;
}

.remove-zone {
  line-height: 0.4rem;
}

.form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  display: block;
  width: 100%;
  padding: .375rem 2.25rem .375rem .75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: white;
  background-image: var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);
  background-repeat: no-repeat;
  background-position: right .75rem center;
  background-size: 16px 12px;
  border: 1px solid #dee2e6;
  border-radius: var(--bs-border-radius);
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.leaflet-top {
  z-index: 999;
}