/* Product-owner refinement layer. Keep additive so the production core stays easy to roll back. */
.quick-intents { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px; }
.quick-intent { border:1px solid var(--line); background:rgba(255,255,255,.04); color:#dce6ef; border-radius:999px; padding:9px 12px; font-size:12px; font-weight:720; }
.quick-intent:hover { border-color:rgba(135,241,179,.38); background:rgba(135,241,179,.06); }
.quick-intent.active { color:var(--green); border-color:rgba(135,241,179,.38); background:var(--green-deep); }
.need-heading-actions { display:flex; gap:14px; align-items:center; }
.need-chip.po-secondary { display:none; }
.need-chips.show-more .need-chip.po-secondary { display:inline-flex; }
.po-scope { margin-left:6px; font-size:10px; line-height:1; padding:3px 5px; border-radius:999px; text-transform:uppercase; letter-spacing:.05em; opacity:.9; }
.po-scope-city { color:var(--green); background:rgba(135,241,179,.08); border:1px solid rgba(135,241,179,.16); }
.po-scope-snapshot { color:#b9c3cf; background:rgba(255,255,255,.04); border:1px solid var(--line); }
.search-suggestions { position:absolute; z-index:30; top:68px; left:0; right:0; border:1px solid var(--line); border-radius:14px; padding:6px; background:#10161e; box-shadow:var(--shadow); max-height:320px; overflow:auto; }
.search-suggestion { width:100%; border:0; background:transparent; color:#e4ecf4; text-align:left; border-radius:10px; padding:10px 11px; line-height:1.35; }
.search-suggestion:hover,.search-suggestion:focus-visible { background:rgba(255,255,255,.06); }
.search-suggestion small { display:block; color:var(--muted); margin-top:3px; }
.freshness-bar { margin:0 0 14px; border:1px solid var(--line); border-radius:14px; padding:10px 12px; color:#bcc7d2; background:rgba(255,255,255,.025); font-size:12px; line-height:1.45; }
.result-view-tabs { display:flex; gap:5px; margin:0 0 14px; padding:4px; width:max-content; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.03); }
.view-tab { border:0; border-radius:999px; background:transparent; color:var(--muted); padding:7px 12px; font-size:12px; }
.view-tab.active { background:#eef4f8; color:#10151c; font-weight:760; }
.results-map { min-height:390px; border:1px solid var(--line); border-radius:22px; overflow:hidden; margin-bottom:14px; background:var(--surface); }
.po-best { border-color:rgba(135,241,179,.34); box-shadow:0 0 0 1px rgba(135,241,179,.08), var(--shadow); }
.po-best::before { content:'BEST FIT'; display:inline-block; margin-bottom:10px; color:var(--green); font-size:10px; letter-spacing:.12em; font-weight:900; }
.po-hidden-partial,.po-duplicate { display:none !important; }
.partial-toggle { grid-column:1 / -1; border:1px dashed rgba(145,200,255,.25); background:rgba(145,200,255,.04); color:var(--blue); border-radius:14px; padding:11px 14px; font-size:12px; font-weight:720; }
.partial-toggle:hover { border-color:rgba(145,200,255,.48); }
.po-data-note { margin-top:8px; color:#93a2b2; font-size:11px; }
.feedback-row { display:flex; gap:8px; align-items:center; margin-top:14px; color:var(--muted); font-size:11px; }
.feedback-button { border:1px solid var(--line); background:rgba(255,255,255,.03); color:#d9e3ec; border-radius:999px; padding:6px 9px; font-size:11px; }
.feedback-button.sent { color:var(--green); border-color:rgba(135,241,179,.25); }
@media (max-width:760px) {
  .quick-intents { flex-wrap:nowrap; overflow-x:auto; padding-bottom:3px; scrollbar-width:none; }
  .quick-intents::-webkit-scrollbar { display:none; }
  .quick-intent { flex:0 0 auto; }
  .result-view-tabs { width:100%; }
  .view-tab { flex:1; }
  .results-map { min-height:52vh; }
}

/* Map anchor: current or selected search origin. */
.nearbycheck-anchor-icon{width:22px!important;height:22px!important;border-radius:999px;background:#173f34;border:4px solid #fff;box-shadow:0 0 0 2px #173f34,0 4px 14px rgba(17,23,20,.28)}
.nearbycheck-anchor-icon span{display:block;width:100%;height:100%;border-radius:999px;background:#173f34}
.nearbycheck-anchor-selected{background:#315e9a;box-shadow:0 0 0 2px #315e9a,0 4px 14px rgba(49,94,154,.28)}
.nearbycheck-anchor-selected span{background:#315e9a}
.leaflet-tooltip.nearbycheck-anchor-label{border:0;border-radius:999px;background:#111714;color:#fff;box-shadow:0 3px 12px rgba(17,23,20,.18);font-size:11px;font-weight:700;padding:5px 8px}
.leaflet-tooltip-top.nearbycheck-anchor-label::before{border-top-color:#111714}


/* Map popup action: hand off a real street route to the device map app. */
.nearbycheck-map-actions{margin-top:12px;display:flex;gap:8px;align-items:center}
.nearbycheck-directions{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:8px 13px;border-radius:999px;background:#173f34;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:780;line-height:1}
.nearbycheck-directions:hover,.nearbycheck-directions:focus-visible{background:#0e3027;outline:2px solid rgba(23,63,52,.22);outline-offset:2px}
.leaflet-popup-content .nearbycheck-map-popup{min-width:220px}
