/**
 * La Délicieuse — Leaflet map base styles (F.6.1)
 *
 * Mobile-first. Loaded only alongside the Leaflet partial (conditional),
 * never globally. Keeps the map self-contained: fixed heights, no horizontal
 * overflow, predictable stacking below the site header.
 */

/* Mobile-first: reduced height per ticket. */
.ld-map {
  width: 100%;
  max-width: 100%;
  height: 280px;
  margin: 0;
  border-radius: 8px;
  overflow: hidden; /* clip tiles/controls to the rounded box, no bleed */
  background: #e8e8e8; /* neutral placeholder before tiles load */
  /* Stay under the sticky header and site UI; Leaflet defaults panes ~200-700. */
  z-index: 0;
}

/* Tablet and up: taller, more usable map. */
@media (min-width: 768px) {
  .ld-map {
    height: 420px;
    border-radius: 10px;
  }
}

/* Large desktop. */
@media (min-width: 1200px) {
  .ld-map {
    height: 480px;
  }
}

/* Keep Leaflet UI controls from ever forcing horizontal overflow. */
.ld-map .leaflet-control-container {
  max-width: 100%;
}

/* Attribution must stay readable but discreet. */
.ld-map .leaflet-control-attribution {
  font-size: 11px;
}

/* Producer marker popup (F.6.2). Built as DOM nodes by leaflet-map.js. */
.ld-map-popup {
  display: flex;
  flex-direction: column;
  gap: 2px;
  font-size: 13px;
  line-height: 1.35;
}

.ld-map-popup__name {
  font-weight: 600;
}

.ld-map-popup__loc {
  color: #555;
  font-size: 12px;
}

/* Single producer map on the native manufacturer page (F.6.3). Loaded here
   because this stylesheet always ships with the Leaflet partial. */
.ld-manufacturer-map {
  margin: 24px 0;
}

.ld-manufacturer-map__title {
  font-size: 22px;
  margin: 0 0 4px;
}

.ld-manufacturer-map__loc {
  display: block;
  margin: 0 0 12px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #8c7757;
}
