.widget-map {
    --widget-green: #245c46;
    --widget-border: #e2e8e2;
    color: #233c34;
    font-family: inherit;
    font-size: var(--text-small);
    line-height: 1.6;
}
.widget-map { border: 1px solid var(--widget-border); border-radius: 10px; overflow: hidden; margin: 22px 0; background: #f3f6f0; }
.widget-map-placeholder { display: flex; justify-content: space-between; align-items: center; padding: 20px; gap: 12px; flex-wrap: wrap; }
.widget-map-placeholder--untitled { justify-content: center; }
.widget-map button { border: 0; border-radius: 6px; background: #245c46; color: white; padding: 10px 15px; cursor: pointer; }
.widget-map-canvas { height: 360px; width: 100%; }
.widget-map [hidden] { display: none !important; }
.widget-map-status:empty { display: none; }
.widget-map-status { display: block; padding: 8px 20px; font-size: var(--text-extra-small); }
.widget-map-status { color: #8a5022; font-size: var(--text-small); }
.widget-map button:focus-visible { outline: 3px solid #c28b36; outline-offset: 3px; }

/* Google's empty content area reserves bottom padding or scrollbar space.
   Collapse it only in our title-only popups; keep the native close button. */
.widget-map .gm-style-iw-c:has(.widget-map-place-label):has(> .gm-style-iw-d:empty) { padding-bottom: 0; }
.widget-map .gm-style-iw-c:has(.widget-map-place-label) > .gm-style-iw-d:empty { display: none; }
