/* IslandOrder Stage 2 B1 — Search toolbar alignment refinement (2026-11-02).
 * Moves manual location selection into the existing search form.
 * No change to GPS, search, cart, maps or server-side filtering.
 */
.io-search-discovery-wrap .io-manual-location-row{
  display:block;min-width:0;margin:7px 0 20px;
}
.io-search-discovery-wrap .io-manual-location-row .io-location-status{
  margin:0;min-width:0;font-size:12px;line-height:1.6;
  color:#587263;overflow-wrap:anywhere;
}
.io-search-discovery-wrap .io-manual-location-row .io-location-status a{
  color:#126338;text-decoration:underline;text-underline-offset:2px;font-weight:700;
}
.io-search-discovery-wrap form.io-home-search .io-manual-location-tools{
  display:flex;align-items:center;flex:0 0 auto;justify-content:flex-start;
  min-width:0;max-width:100%;gap:7px;margin:0;
}
.io-search-discovery-wrap form.io-home-search .io-place-label{
  display:flex;align-items:center;min-width:0;margin:0;padding:0;
  background:transparent;border:0;font-weight:600;
}
.io-search-discovery-wrap form.io-home-search #io-place-picker{
  box-sizing:border-box;display:block;min-width:146px;width:165px;max-width:100%;
  min-height:46px;height:46px;padding:0 10px;
  color:#173d29;background:#fff;border:1px solid #dbe7df;border-radius:12px;
  font-size:12px;font-weight:600;cursor:pointer;
}
.io-search-discovery-wrap form.io-home-search #io-place-picker:focus-visible,
.io-search-discovery-wrap form.io-home-search .io-place-reset:focus-visible{
  outline:3px solid #1c8a4b;outline-offset:3px;
}
.io-search-discovery-wrap form.io-home-search .io-place-reset{
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;
  padding:0 8px;gap:5px;border:1px solid #dae5dc;border-radius:10px;
  background:#f7faf8;color:#29553a;text-decoration:none;
  font-size:11px;font-weight:700;white-space:nowrap;
}
.io-search-discovery-wrap form.io-home-search .io-place-reset:hover{background:#edf7f0}
.io-island-scope .io-radius-label{display:none!important}
.io-radius-label select:disabled{opacity:.6;cursor:not-allowed}

/* Desktop: search + button + location dropdown + optional clear + GPS + map + radius.
 * The input shrinks first, while controls stay together on a single line. */
@media(min-width:1025px){
  .io-search-discovery-wrap form.searchbar.io-home-search,
  .io-search-discovery-wrap.io-search-results-mode form.searchbar.io-home-search{
    display:flex;flex-direction:row;flex-wrap:nowrap;
    align-items:center;gap:8px;min-width:0;
  }
  .io-search-discovery-wrap form.io-home-search>input[name="q"]{
    flex:1 1 180px;width:auto;min-width:145px;max-width:none;
  }
  .io-search-discovery-wrap form.io-home-search>button.btn{
    flex:0 0 auto;min-width:0;white-space:nowrap;padding-left:13px;padding-right:13px;
  }
  .io-search-discovery-wrap form.io-home-search>a.btn.secondary{flex:0 0 auto}
  .io-search-discovery-wrap form.io-home-search .io-search-location-tools{
    display:flex;flex:0 0 auto;grid-column:auto;flex-wrap:nowrap;
    align-items:center;justify-content:flex-end;min-width:0;width:auto;
    gap:7px;max-width:none;
  }
  .io-search-discovery-wrap form.io-home-search .io-search-location-tools>.btn{
    flex:0 0 auto;padding-left:10px;padding-right:10px;
  }
  .io-search-discovery-wrap form.io-home-search .io-radius-label{flex:0 0 auto;white-space:nowrap;gap:5px}
  .io-search-discovery-wrap form.io-home-search .io-radius-label select{
    min-width:90px;max-width:108px;width:92px;padding:0 7px;
  }
}
/* Medium tablet: two tidy rows, rather than compressed controls. */
@media(min-width:761px) and (max-width:1024px){
  .io-search-discovery-wrap form.searchbar.io-home-search,
  .io-search-discovery-wrap.io-search-results-mode form.searchbar.io-home-search{
    display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;align-items:center;
  }
  .io-search-discovery-wrap form.io-home-search>input[name="q"]{grid-column:1;min-width:0;max-width:none;width:100%}
  .io-search-discovery-wrap form.io-home-search>button.btn{grid-column:2;min-width:0}
  .io-search-discovery-wrap form.io-home-search .io-manual-location-tools{grid-column:1;grid-row:2;width:max-content}
  .io-search-discovery-wrap form.io-home-search>a.btn.secondary{grid-column:auto}
  .io-search-discovery-wrap form.io-home-search .io-search-location-tools{grid-column:2/-1;grid-row:2;justify-content:flex-end;display:flex;flex-wrap:nowrap;width:auto}
}
/* Mobile: search input, Search button, location dropdown, then GPS and map. */
@media(max-width:760px){
  .io-search-discovery-wrap form.searchbar.io-home-search,
  .io-search-discovery-wrap.io-search-results-mode form.searchbar.io-home-search{
    display:grid;grid-template-columns:minmax(0,1fr) auto;
    gap:9px;align-items:stretch;
  }
  .io-search-discovery-wrap form.io-home-search>input[name="q"]{
    grid-column:1/-1;grid-row:1;min-width:0;max-width:100%;width:100%;
  }
  .io-search-discovery-wrap form.io-home-search>button.btn{
    grid-column:1;grid-row:2;width:100%;min-width:0;
  }
  .io-search-discovery-wrap form.io-home-search>a.btn.secondary{
    grid-column:2;grid-row:2;min-width:0;white-space:nowrap;
  }
  .io-search-discovery-wrap form.io-home-search .io-manual-location-tools{
    grid-column:1/-1;grid-row:3;display:flex;width:100%;min-width:0;
    flex-wrap:wrap;justify-content:stretch;margin:0;
  }
  .io-search-discovery-wrap form.io-home-search .io-place-label{flex:1 1 145px}
  .io-search-discovery-wrap form.io-home-search #io-place-picker{
    min-height:44px;height:44px;min-width:0;width:100%;font-size:13px;
  }
  .io-search-discovery-wrap form.io-home-search .io-place-reset{flex:0 0 auto}
  .io-search-discovery-wrap form.io-home-search .io-search-location-tools{
    grid-column:1/-1;grid-row:4;display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;width:100%;
  }
  .io-search-discovery-wrap form.io-home-search .io-search-location-tools>.btn{width:100%;min-width:0}
  .io-search-discovery-wrap form.io-home-search .io-radius-label{grid-column:1/-1}
  .io-search-discovery-wrap .io-manual-location-row{margin:7px 0 18px}
  .io-search-discovery-wrap .io-manual-location-row .io-location-status{font-size:11px}
}
@media(max-width:355px){
  .io-search-discovery-wrap form.io-home-search .io-place-reset{font-size:10px;padding:0 7px}
}
