/* Basemap-only variant. Palette and typography remain owned by operational.css. */
.map-card { padding: 0; overflow: hidden; }
.map-card .map-heading { align-items: flex-start; flex-wrap: wrap; }
.map-heading h2 { margin: 0; color: var(--ink); font: 700 18px/1.4 "DM Sans", sans-serif; }
.map-heading p { margin: 6px 0 0; color: var(--ink-soft); font-size: 13px; line-height: 1.6; }
.map-view-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.map-view-actions .button { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; cursor: pointer; }
.map-view-actions .button:focus-visible { outline: 3px solid var(--sun); outline-offset: 3px; }
.map-view-actions .button:active:not(:disabled) { filter: brightness(.9); }
.map-view-actions .button:disabled { cursor: wait; }
.map-surface { height: clamp(360px, 64vh, 760px); background: var(--cream); }
.map-surface iframe { display: block; width: 100%; height: 100%; border: 0; }
.map-status { min-height: 70px; margin: 0; padding: 16px 20px; border-top: 1px solid var(--line); color: var(--ink-soft); font-size: 13px; line-height: 1.6; }
@media (max-width: 600px) {
  .map-view-actions { width: 100%; }
  .map-view-actions .button { flex: 1; }
  .map-status { min-height: 100px; padding: 14px 16px; }
}
