/* Shared discovery controls: type, touch targets and focus geometry only.
   Page palettes, result cards and sponsor placements remain page-owned. */
:root {
  --discovery-control-height: 44px;
  --discovery-control-radius: 4px;
  --discovery-control-font: 16px;
  --discovery-control-gap: 8px;
}
.wk-pill, .free-pill, .finder-select, .finder-input,
.clubs-page .search-form, .clubs-page .search-form button[type="submit"],
.clubs-page .cc-filter, .clubs-page .cc-filter select {
  border-radius: var(--discovery-control-radius);
}
.wk-pill, .free-pill, .finder-select, .finder-input,
.clubs-page .search-form button[type="submit"], .clubs-page .cc-filter select {
  min-height: var(--discovery-control-height);
  font-size: var(--discovery-control-font);
}
.clubs-page .search-form:focus-within,
.clubs-page .cc-filter:focus-within {
  outline: 2px solid var(--sp-green);
  outline-offset: 2px;
  box-shadow: none;
}
/* Padding keeps keyboard outlines inside the scrolling viewport. */
.free-filters-scroll {
  padding-block: 5px;
  scrollbar-width: thin;
  scrollbar-color: var(--free-muted) transparent;
}
.free-filters-scroll::-webkit-scrollbar { display: block; height: 6px; }
.free-filters-scroll::-webkit-scrollbar-thumb { background: var(--free-muted); border-radius: 0; }
.free-filters-scroll .free-pill:focus-visible { outline: 2px solid var(--free-green); outline-offset: -3px; }
/* Keep the day and outing filters visible without a sideways gesture. */
.wk-filters-scroll { flex-wrap: wrap; overflow: visible; row-gap: var(--discovery-control-gap); }
.wk-pill-group { flex-wrap: wrap; }
.wk-pill:focus-visible { outline: 2px solid var(--sp-green); outline-offset: 2px; }
@media (max-width: 700px) {
  .free-filters-bar { position: static; }
  .free-filters-scroll {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    overflow: visible;
    scrollbar-width: none;
  }
  .free-filters-scroll::-webkit-scrollbar { display: none; }
  .free-pill { min-width: 0; padding: 6px; white-space: normal; line-height: 1.25; }
  .free-pill:last-child { grid-column: span 2; }
  .wk-filters-scroll { flex-direction: column; align-items: stretch; }
  .wk-pill-group { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .wk-pill { min-width: 0; padding: 6px; white-space: normal; }
  .wk-pill-sep { display: none; }
}
@media (max-width: 360px) {
  .wk-pill { font-size: 14px; }
}
/* Homepage's older sheets use !important and three body classes. Match that
   existing boundary once here; never apply these rules to navigation/cards. */
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch input#searchInput,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch #extraFilters select,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch select,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch .hs-go,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch #extraFilters .hs-seg,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch .hs-seg,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch .m1-chip {
  border-radius: var(--discovery-control-radius) !important;
  min-height: var(--discovery-control-height) !important;
  height: auto !important;
}
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch input#searchInput,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch #extraFilters select,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch select,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch .hs-date-value,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch .m1-chip {
  font-size: var(--discovery-control-font) !important;
}
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch .m1-chip { padding-inline: 10px !important; }
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch .m1-chip--select:focus-within,
html body.homepage-autumn.homepage-autumn.homepage-autumn #homeSearch .hs-seg:focus-within {
  outline: 2px solid var(--m1-green) !important;
  outline-offset: 2px !important;
}
