/* Location picker: address suggestions + pop-open map, for the estimator's site-location fields. */
.lp-row{ position:relative; }
.lp-list{ position:absolute; top:100%; left:0; right:0; z-index:40; margin:4px 0 0; padding:4px 0; list-style:none; background:#fff; border:1px solid #cfd3d2; border-radius:10px; box-shadow:0 8px 24px rgba(0,0,0,.14); max-height:270px; overflow:auto; }
.lp-list[hidden]{ display:none; }
.lp-list li{ padding:10px 14px; font-size:15px; line-height:1.35; color:#22292b; cursor:pointer; display:flex; gap:10px; align-items:flex-start; }
.lp-list li:before{ content:""; flex:0 0 14px; height:14px; margin-top:3px; background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B505B' stroke-width='2'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 10-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E"); }
.lp-list li[aria-selected="true"], .lp-list li:hover{ background:#EDEDEC; }
.lp-list li.lp-empty{ cursor:default; color:#5f6a6c; }
.lp-list li.lp-empty:before{ display:none; }

.lp-map-wrap{ margin-top:10px; border:1.5px solid #cfd3d2; border-radius:12px; overflow:hidden; background:#fff; }
.lp-map-wrap[hidden]{ display:none; }
.lp-bar{ display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; justify-content:space-between; padding:10px 12px; background:#EDEDEC; font-size:14px; color:#3d4749; }
.lp-bar .lp-actions{ display:flex; gap:8px; flex-wrap:wrap; }
.lp-bar button{ font:inherit; font-size:14px; font-weight:600; padding:7px 12px; border-radius:8px; cursor:pointer; border:1.5px solid var(--rb-teal, #1B505B); background:#fff; color:var(--rb-teal, #1B505B); }
.lp-bar button:hover{ background:var(--rb-teal, #1B505B); color:#fff; }
.lp-map{ height:340px; width:100%; }
@media (max-width:640px){ .lp-map{ height:300px; } }

/* Keep the text box usable on narrow screens: it takes the space, the buttons stay compact. */
.lp-row > input{ flex:1 1 auto; min-width:0; }
.lp-row > button{ flex:0 0 auto; padding-left:12px !important; padding-right:12px !important; }
@media (max-width:560px){
  .lp-row > button[aria-label="Search for this place"]{ display:none; }  /* the keyboard's Enter/Go key searches */
}
