/* Header section seperti halaman lain */
.header-section {
  background: linear-gradient(
    180deg,
    rgba(250, 255, 203, 0.35),
    rgba(255, 255, 255, 0.8)
  );
  text-align: center;
  padding-top: 100px !important;
  padding-bottom: 60px;
  position: relative;
  z-index: 2;
}
.display-title {
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--brand-dark);
}
.subtle {
  color: rgba(15, 23, 42, 0.7);
}

/* Map wrapper */
.map-section {
  position: relative;
  width: 100%;
  height: calc(100vh - 80px);
  margin-top: 0;
  z-index: 1;
}

#map {
  height: 100%;
  width: 100%;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
}

/* Responsif */
@media (max-width: 768px) {
  .map-section {
    height: calc(100vh - 64px);
  }
}

/* Layer control styling */
.leaflet-control-layers {
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  overflow: hidden;
}

.leaflet-popup-content {
  font-size: 0.9rem;
  color: #222;
}

.map-wrapper{position:relative}
#map{height:90vh;min-height:420px}
.map-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.82);backdrop-filter:saturate(1.2) blur(2px);z-index:500;text-align:center;color:#0f172a;flex-direction:column;gap:.75rem}
.map-loading .spinner{width:36px;height:36px;border-radius:50%;border:3px solid rgba(13,110,253,.2);border-top-color:#0d6efd;animation:spin 1s linear infinite}
.map-loading-text{font-size:.95rem;line-height:1.35}
@keyframes spin{to{transform:rotate(360deg)}}
.map-loading .spinner{
  width:36px;height:36px;border-radius:50%;
  border:3px solid color-mix(in srgb, var(--brand) 20%, transparent);
  border-top-color: var(--brand);
  animation:spin 1s linear infinite;
}

@supports not (color: color-mix(in srgb, black, white)) {
  .map-loading .spinner{
    border-color: rgba(0,0,0,.08);
    border-top-color: var(--brand);
  }
}


