/* MAP HERO - 68vh full-width, STICKY */
.nearby-section {
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important; /* Clip map to prevent overlap with content-area rounded corners */
  width: 100% !important;
  max-width: none !important;
  position: sticky !important; /* Sticky positioning */
  top: 0 !important; /* Sticks to top when scrolling */
  z-index: 999 !important; /* Below fixed header, above content */
  height: 68vh !important; /* Fixed height for sticky */
}

/* Hide "Incidents Near You" label */
.section-label {
  display: none !important;
}

/* Map at 68vh - full width, no border radius */
#map {
  width: 100% !important;
  height: 68vh !important;
  border-radius: 0 !important;
  transition: height .3s ease;
}

.map-container {
  position: relative;
  height: 100%;
}

/* Hide Safety Circle toggle for now */
#safetyCircleToggle {
  display: none !important;
}

/* Main content - remove top spacing so map starts at top */
main {
  padding: 0 !important;
  margin: 0 !important;
}

/* Google Maps InfoWindow - Dodger Blue Border */
.gm-style-iw-d {
  overflow: auto !important;
  max-height: none !important;
}

.gm-style-iw.gm-style-iw-c {
  border: 2px solid #1E90FF !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 12px rgba(30, 144, 255, 0.3) !important;
  padding: 12px !important;
  max-height: none !important;
}

/* InfoWindow content container - prevent clipping */
.gm-style-iw-chr {
  display: none !important; /* Hide close button row if empty */
}

.gm-style-iw-ch {
  padding: 0 !important;
  height: auto !important;
}

/* Hide the default close button background */
.gm-style-iw-tc::after {
  background: #1E90FF !important;
}

/* Member InfoWindow Profile Card */
.wb-profile-card {
  min-width: 200px;
  max-width: 280px;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.wb-profile-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 8px;
}

.wb-profile-info {
  flex: 1;
}

.wb-profile-name {
  font-size: 16px;
  font-weight: 600;
  color: #1f2937;
  margin-bottom: 2px;
  text-align: center;
}

.wb-profile-time {
  font-size: 12px;
  color: #6b7280;
}

.wb-infowindow-stat {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
}

.wb-infowindow-stat .stat-icon {
  font-size: 14px;
}

.wb-infowindow-stat .stat-value {
  font-weight: 500;
  color: #374151;
}

.wb-infowindow-stat .stat-value.low-battery {
  color: #ef4444;
}

.wb-activity-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 16px;
  font-size: 13px;
  font-weight: 500;
  background: #f3f4f6;
  color: #374151;
  margin-bottom: 10px;
}

.wb-activity-badge.walking {
  background: #dcfce7;
  color: #166534;
}

.wb-activity-badge.running {
  background: #fef3c7;
  color: #92400e;
}

.wb-activity-badge.driving {
  background: #dbeafe;
  color: #1e40af;
}

.wb-activity-badge.stationary {
  background: #f3f4f6;
  color: #6b7280;
}

.wb-activity-badge .speed-detail {
  font-size: 11px;
  opacity: 0.8;
}

.wb-profile-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: #6b7280;
}

.wb-profile-footer .status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.wb-address-loader {
  width: 100%;
  font-size: 11px;
  color: #9ca3af;
  margin-top: 4px;
}

.wb-ping-btn {
  width: 100%;
  padding: 8px 12px;
  background: #7F00FF;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s;
}

.wb-ping-btn:hover {
  background: #6b00d6;
}

.wb-ping-btn:active {
  background: #5a00b8;
}
