.ob-mapbox { position: absolute; inset: 0; }
.ob-mapbox-static { width: 100%; height: 100%; }
.mapboxgl-canvas { outline: none; }
.ob-map-pin {
  width: 12px; height: 12px; border-radius: 50%;
  background: var(--ink); border: 2px solid var(--paper);
  box-shadow: 0 0 0 1px color-mix(in oklab, var(--ink) 40%, transparent);
}
.ob-map-pin.is-live { background: var(--signal); }
.ob-map-token-missing {
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  text-align: center; padding: 32px;
  font-family: var(--font-serif); font-style: italic; color: color-mix(in oklab, var(--ink) 70%, transparent);
}
.ob-map-fallback {
  position: absolute;
  inset: 0;
  overflow: hidden;
  background: color-mix(in oklab, var(--sea-weathered) 14%, var(--paper));
}
.ob-map-fallback__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(0.88) contrast(1.02);
}
.ob-map-fallback__wash {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, color-mix(in oklab, var(--paper) 16%, transparent) 0%, color-mix(in oklab, var(--fog) 40%, transparent) 100%);
}
.ob-map-fallback__label {
  position: absolute;
  left: 18px;
  bottom: 16px;
  font-family: var(--font-display);
  font-size: .72rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: color-mix(in oklab, var(--ink) 62%, transparent);
}
