/* GPS evidence stays compact until an operator asks for details. */
.effective-location-details {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
  max-width: 100%;
}
.effective-location-summary {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  min-width: 1.5rem;
  min-height: 1.5rem;
  padding: 0.04rem 0.3rem;
  border: 1px solid var(--color-border);
  border-radius: 999px;
  color: var(--color-text-muted);
  cursor: pointer;
  list-style: none;
}
.effective-location-summary::-webkit-details-marker { display: none; }
.effective-location-summary--approximate { color: var(--color-text-muted); }
.effective-location-summary--warning {
  border-color: color-mix(in srgb, var(--color-warning) 45%, var(--color-border));
  color: var(--color-warning);
}
.effective-location-summary--warning > span { color: var(--color-warning); }
.effective-location-summary-text { font-size: 0.78rem; }
.effective-location-details--compact .effective-location-summary-text { display: none; }
.effective-location-popover {
  display: none;
  position: fixed;
  margin: 0;
  z-index: 30;
  top: 0;
  left: 0;
  right: auto;
  min-width: min(16rem, calc(100vw - 1.5rem));
  max-width: min(22rem, calc(100vw - 1.5rem));
  max-height: min(28rem, calc(100vh - 5rem));
  overflow: auto;
  padding: 0.65rem;
  border: 1px solid var(--color-border);
  border-radius: 0.6rem;
  background: var(--color-surface-raised);
  box-shadow: 0 12px 30px color-mix(in srgb, var(--black) 28%, transparent);
  color: var(--color-text);
  font-size: 0.85rem;
  font-weight: 400;
}
.effective-location-popover:popover-open { display: block; }
.effective-location-popover dl { margin: 0; display: grid; gap: 0.25rem; }
.effective-location-popover dl > div {
  display: grid;
  grid-template-columns: 5.5rem minmax(0, 1fr);
  gap: 0.5rem;
}
.effective-location-popover dt { color: var(--color-text-muted); }
.effective-location-popover dd { margin: 0; color: var(--color-text); overflow-wrap: anywhere; }
.effective-location-recheck {
  margin-top: 0.55rem;
  padding: 0.25rem 0.5rem;
  border: 1px solid var(--color-border);
  border-radius: 0.45rem;
  background: transparent;
  color: var(--color-text-muted);
}
.effective-location-recheck:hover,
.effective-location-recheck:focus-visible { color: var(--color-text); }
.effective-location-note { margin: 0.45rem 0 0; color: var(--color-text-faint); font-size: 0.74rem; }
.location-map-effective-location { display: inline-flex; align-self: flex-start; margin-top: 0.15rem; }
.location-map-popup-location { margin-top: 0.25rem; }
.location-map-popup-location .effective-location-popover { left: auto; right: 0; color: var(--color-text); }
.well-structured-heading-row { display: flex; align-items: center; gap: 0.4rem; margin-bottom: 0.25rem; }
.well-structured-heading-row .wells-structured-heading { margin: 0; }
.well-location-observations { display: inline-flex; margin: 0; font-size: 0.82rem; }
.well-location-observations[hidden] { display: none; }
.effective-location-observation-popover dl { gap: 0.55rem; }
.effective-location-observation-popover dl > .effective-location-observation-item { display: grid; grid-template-columns: 1fr; gap: 0.25rem; padding-bottom: 0.5rem; border-bottom: 1px solid var(--color-border); }
.effective-location-observation-item > div { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: 0.5rem; }
.effective-location-observation-item:last-child { padding-bottom: 0; border-bottom: 0; }
