/* Location controls extend the existing discovery palette and native forms. */
.location-actions { display:flex; flex-wrap:wrap; gap:10px; margin-block:12px; }
.location-fields, .coverage-option { border:1px solid var(--line); border-radius:14px; padding:18px; margin:20px 0; min-width:0; }
.location-fields legend, .coverage-option legend { padding:0 7px; font-weight:600; }
.location-status { color:var(--muted); font-size:14px; line-height:1.6; margin-block:12px; }
.map-canvas { height:340px; width:100%; border-radius:14px; border:1px solid var(--line); overflow:hidden; margin-block:14px; background:var(--cream); }
.map-canvas img { max-width:none; }
.coordinate-details { margin-block:16px; }
.coordinate-details summary, .coverage-editor summary { min-height:44px; padding-block:12px; cursor:pointer; font-weight:600; }
.coordinate-details .form-grid { padding-top:12px; }
.location-picker [data-use-map-center] { margin-bottom:12px; }
.field-error { color:#9c2b26; font-size:14px; }
.coverage-editor { border-top:1px solid var(--line); padding-block:8px; }
.coverage-editor .coverage-option { margin-block:12px; }
.coverage-option .check { min-height:44px; }
.coverage-option small, .location-picker small { display:block; line-height:1.6; }
.map-results-panel { margin-block:24px; }
.map-results-panel .map-canvas { height:420px; }
.map-marker-label { display:grid; place-items:center; width:34px; height:34px; border:3px solid white; border-radius:50%; background:var(--green); color:white; font-size:16px; font-weight:700; box-shadow:0 2px 8px #0004; }
.business-card.is-map-selected { outline:3px solid var(--accent); outline-offset:3px; }
.business-distance { font-size:14px; color:var(--muted); }
.business-delivery { margin-bottom:8px; }
.search-mode-summary { display:flex; flex-wrap:wrap; gap:8px; margin-block:16px; }
.map-results-panel [data-map-search] { margin-top:16px; }
@media(max-width:720px) {
    .location-fields, .coverage-option { padding:14px; }
    .location-actions .button { flex:1 1 140px; }
    .map-canvas, .map-results-panel .map-canvas { height:300px; }
}
