/* Workspace-native voices page; independent of WPBakery's row and column CSS. */
body.vukx-search-preview-active .vukx-native-directory{width:100%;max-width:1022px;margin:0 auto;box-sizing:border-box;min-width:0}
body.vukx-search-preview-active .vukx-native-directory *{box-sizing:border-box}
body.vukx-search-preview-active .vukx-native-search{min-width:0}
body.vukx-search-preview-active .vukx-native-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:12px;align-items:start;width:100%;min-width:0}
body.vukx-search-preview-active .vukx-native-filters{min-width:0;padding:14px 10px;border:1px solid #e0ebe7;border-radius:12px;background:#f7faf8;align-self:start}
body.vukx-search-preview-active .vukx-native-facet{margin:0 0 16px;min-width:0}
body.vukx-search-preview-active .vukx-native-results{min-width:0;width:100%}
body.vukx-search-preview-active .vukx-native-pagination{margin:32px 0 45px;text-align:center}
body.vukx-search-preview-active .vukx-native-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;width:100%;margin:16px 0 26px;min-height:36px}
body.vukx-search-preview-active .vukx-native-toolbar-left{flex:1 1 0;min-width:0}
body.vukx-search-preview-active .vukx-native-toolbar-right{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}
body.vukx-search-preview-active .vukx-native-toolbar-right.vukx-shortlist-sort-parent{display:flex!important;flex-wrap:nowrap!important;width:auto!important;justify-content:flex-end!important;gap:10px!important}
body.vukx-search-preview-active .vukx-native-toolbar .nonmobile_search_sort_by{width:265px!important;min-width:265px!important;max-width:265px!important;flex:0 0 265px!important;margin:0!important}
body.vukx-search-preview-active .vukx-native-toolbar .nonmobile_search_sort_by .wpgb-facet,
body.vukx-search-preview-active .vukx-native-toolbar .nonmobile_search_sort_by select{width:100%!important;min-width:0!important;height:36px!important;min-height:36px!important;margin:0!important}
body.vukx-search-preview-active .vukx-native-toolbar .vukx-listening-progress.vukx-listening-location-desktop{display:flex!important;align-items:center!important;gap:7px!important;flex:0 1 auto!important;min-width:0!important;margin:0!important;max-width:none!important;width:auto!important;flex-wrap:nowrap!important}
body.vukx-search-preview-active .vukx-native-toolbar .vukx-listening-progress-actions{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;width:auto!important;flex:0 0 auto!important}
body.vukx-search-preview-active .vukx-native-toolbar .vukx-listening-progress-info{display:flex!important;align-items:center!important;flex:0 0 auto!important;width:auto!important;white-space:nowrap!important;min-height:36px!important;margin:0!important}
body.vukx-search-preview-active .vukx-native-toolbar .vukx-shortlist-sort-tools{display:inline-flex!important;align-items:center!important;flex:0 0 auto!important;margin:0!important}
body.vukx-search-preview-active .vukx-native-toolbar .vukx-shortlist-sort-tools[hidden],body.vukx-search-preview-active .vukx-native-toolbar .vukx-shortlist-sort-tools button[hidden]{display:none!important}
body.vukx-search-preview-active .vukx-native-toolbar :is(.vukx-shortlist-sort-tools button,.vukx-listening-progress-actions button){height:36px!important;min-height:36px!important;white-space:nowrap!important;align-self:center!important}
/* WPGB may render a mobile copy of the sort control, but never show both. */
@media(min-width:768px){body.vukx-search-preview-active .vukx-native-results>.mobile_search_sort_by{display:none!important}}
@media(min-width:768px) and (max-width:1120px){body.vukx-search-preview-active .vukx-native-toolbar{flex-wrap:wrap;row-gap:10px}body.vukx-search-preview-active .vukx-native-toolbar-right{flex:0 1 100%;justify-content:flex-end}body.vukx-search-preview-active .vukx-native-toolbar .nonmobile_search_sort_by{width:245px!important;min-width:245px!important;flex-basis:245px!important}}
@media(max-width:767px){body.vukx-search-preview-active .vukx-native-columns{grid-template-columns:minmax(0,1fr)}body.vukx-search-preview-active .vukx-native-filters{display:none}body.vukx-search-preview-active .vukx-native-toolbar{display:none}body.vukx-search-preview-active .vukx-native-results>.mobile_search_sort_by{display:none}body.vukx-search-preview-active .vukx-native-directory{padding:0 10px}}

/* 0.357.497: the WordPress landingpage template renders post_content directly
   into body. Keep the hero, live casting desk and results together in one
   full-width block formatting context, not as independent body-level siblings. */
html body.vukx-search-preview-active .vukx-native-page{display:flow-root!important;clear:both!important;float:none!important;position:relative!important;isolation:isolate;width:min(1190px,calc(100% - 40px))!important;max-width:1190px!important;margin:0 auto!important;padding:0!important;min-width:0!important;box-sizing:border-box!important}
html body.vukx-search-preview-active .vukx-native-page>.vukx-voices-hero,
html body.vukx-search-preview-active .vukx-native-page>.vukx-sc-reel.vukx-casting-desk{width:100%!important;max-width:100%!important;min-width:0!important;float:none!important;clear:both!important;margin-left:0!important;margin-right:0!important;left:auto!important;right:auto!important;transform:none!important;box-sizing:border-box!important}
html body.vukx-search-preview-active .vukx-native-page>.vukx-native-directory{width:100%!important;max-width:100%!important;min-width:0!important;clear:both!important;float:none!important;margin:0!important;padding:0 16px!important;box-sizing:border-box!important}
/* Genuine two-sided toolbar: left player with its count, right shortlist + sort. */
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;gap:16px!important;width:100%!important;max-width:100%!important;min-height:38px!important;margin:20px 0 30px!important;padding:0!important}
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar-left{display:flex!important;align-items:center!important;flex:1 1 auto!important;min-width:0!important}
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar-right{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex:0 0 auto!important;min-width:0!important}
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar .nonmobile_search_sort_by{width:285px!important;min-width:285px!important;max-width:285px!important;flex:0 0 285px!important;overflow:visible!important}
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar .vukx-listening-progress{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;width:auto!important;max-width:100%!important;justify-content:flex-start!important;flex-wrap:nowrap!important;gap:10px!important}
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar .vukx-listening-progress-info{flex:0 1 auto!important;width:auto!important;min-width:70px!important;margin:0!important;gap:5px!important}
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar .vukx-listening-progress-track{flex:0 1 90px!important;min-width:36px!important}
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar .vukx-listening-progress-actions{padding:0!important;margin:0!important}
html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar .vukx-shortlist-sort-tools{margin:0!important}
@media(min-width:768px) and (max-width:1090px){html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar{flex-wrap:wrap!important;gap:12px!important}html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar-right{margin-left:auto!important}html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar .nonmobile_search_sort_by{width:265px!important;min-width:265px!important;flex-basis:265px!important}}
@media(max-width:767px){html body.vukx-search-preview-active .vukx-native-page{width:calc(100% - 24px)!important}html body.vukx-search-preview-active .vukx-native-page>.vukx-native-directory{padding:0!important}html body.vukx-search-preview-active .vukx-native-page .vukx-native-toolbar{display:none!important}}

/* v0.357.498: one root, no theme row positioning; this only becomes effective
   when wpautop has been removed and the browser retains main's children. */
html body.vukx-search-preview-active main.vukx-native-page{display:block!important;float:none!important;clear:both!important;width:min(1190px,calc(100% - 40px))!important;max-width:1190px!important;margin:0 auto!important;padding:0!important;box-sizing:border-box!important}
html body.vukx-search-preview-active main.vukx-native-page > .vukx-voices-hero{width:100%!important;max-width:none!important;min-width:0!important;margin:16px 0 20px!important;transform:none!important}
html body.vukx-search-preview-active main.vukx-native-page > .vukx-sc-reel.vukx-casting-desk{width:100%!important;max-width:none!important;min-width:0!important;margin:0 0 15px!important;transform:none!important;clear:both!important}
html body.vukx-search-preview-active main.vukx-native-page > .vukx-native-directory{width:100%!important;max-width:none!important;padding:0 16px!important;margin:0!important}
@media(max-width:767px){html body.vukx-search-preview-active main.vukx-native-page{width:calc(100% - 24px)!important}html body.vukx-search-preview-active main.vukx-native-page > .vukx-native-directory{padding:0!important}html body.vukx-search-preview-active main.vukx-native-page > .vukx-voices-hero{margin:12px 0!important}}

/* v0.357.500 — desktop filters: compact, sticky, independently scrollable.
   Grid height is determined by the results, not imposed on the facet panel.
   Preserve mobile's existing drawer-based filtering. */
@media (min-width:768px){
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-columns{
  align-items:start!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-filters{
  position:sticky!important;
  top:90px!important;
  align-self:start!important;
  height:max-content!important;
  max-height:calc(100vh - 106px)!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#bfd7cd transparent;
 }
}
@media (max-width:767px){
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-filters{
  position:static!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
 }
}

/* v0.357.502 — desktop sorting facet participates in the same 36px
   centreline as the playlist buttons and shortlist pill. A shared facet
   declaration in search-preview.css adds an 18px bottom margin; on a flex
   row that displaces the visible dropdown upward. Reset the actual facet,
   not the toolbar or its neighbouring controls. */
@media (min-width:768px){
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by{
  display:flex!important;align-items:center!important;align-self:center!important;
  height:36px!important;min-height:36px!important;
  margin:0!important;padding:0!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by .wpgb-facet:not(.vukx-pagination-facet){
  display:flex!important;align-items:center!important;
  width:100%!important;height:36px!important;min-height:36px!important;
  margin:0!important;padding:0!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by :is(.wpgb-select,.wpgb-sort-facet,select){
  margin-top:0!important;margin-bottom:0!important;
 }
}

/* v0.357.503 — The native WPGB sort facet's fieldset/label must fill its
   285px host. Otherwise the 36px outer flex box aligns, but the actual select
   shrinks inward and its built-in arrow overlaps the selected option. */
@media (min-width:768px){
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right{
  justify-content:flex-end!important;align-items:center!important;align-self:center!important;
  margin-left:auto!important;margin-right:0!important;padding-right:0!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by{
  display:block!important;align-self:center!important;flex:0 0 285px!important;
  width:285px!important;min-width:285px!important;max-width:285px!important;
  height:36px!important;min-height:36px!important;margin:0!important;padding:0!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by :is(.wpgb-facet,fieldset,.wpgb-sort-facet,label){
  display:block!important;position:relative!important;box-sizing:border-box!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  height:36px!important;min-height:36px!important;
  margin:0!important;padding:0!important;border:0!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by select.wpgb-sort.wpgb-select{
  display:block!important;box-sizing:border-box!important;width:100%!important;
  height:36px!important;min-height:36px!important;
  padding:0 47px 0 12px!important;margin:0!important;
  font-size:12px!important;line-height:36px!important;
  white-space:nowrap!important;text-overflow:ellipsis!important;
  -webkit-appearance:none!important;appearance:none!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by .wpgb-select-controls{
  position:absolute!important;top:0!important;right:8px!important;bottom:0!important;
  width:31px!important;height:36px!important;display:flex!important;align-items:center!important;
  justify-content:center!important;pointer-events:none!important;margin:0!important;transform:none!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by .wpgb-select-separator{
  position:absolute!important;left:0!important;top:8px!important;bottom:8px!important;
  height:auto!important;margin:0!important;
 }
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by .wpgb-select-toggle{
  position:static!important;flex:0 0 18px!important;width:18px!important;height:18px!important;
  margin-left:7px!important;transform:none!important;
 }
}
@media (min-width:768px) and (max-width:1090px){
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by{
  flex-basis:265px!important;width:265px!important;min-width:265px!important;max-width:265px!important;
 }
}
/* Use a consistent, centred chevron icon in the floating shortlist pill. */
html body .vukx-shortlist-float-toggle .vukx-shortlist-chevron-icon{
 display:block!important;width:14px!important;height:14px!important;flex:0 0 14px!important;
 stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;
 margin-left:1px!important;
}

/* v0.357.504 — optical alignment of WPGB's rendered desktop sorting
   control with the 36px shortlist pill. The control's internal geometry
   sits ~3px above the adjacent button despite a centred parent. Adjust
   only the visible sort host, without affecting its width, arrow, mobile
   facets or surrounding toolbar spacing. */
@media (min-width:768px){
 html body.vukx-search-preview-active main.vukx-native-page .vukx-native-toolbar-right > .nonmobile_search_sort_by{
  position:relative!important;top:3px!important;
 }
}

/* v0.357.520: the native directory uses only its real elements from first paint.
   The old simulated sidebar overlay and readiness-dependent CSS are removed;
   initial structural geometry is emitted as small critical CSS in wp_head. */
html body.vukx-search-preview-active main.vukx-native-page > .vukx-sc-reel.vukx-casting-desk{
 display:flex!important;flex-direction:column!important;margin:0 0 15px!important;
}
html body.vukx-search-preview-active main.vukx-native-page > .vukx-native-directory{
 margin-top:0!important;
}
html body.vukx-search-preview-active main.vukx-native-page .vukx-native-filters{
 min-height:0!important;
}
