/* Shared custom dropdown — same control as the storefront location picker */
.ui-select{position:relative;width:100%;min-width:0}
.ui-select .ctrl.loc-trigger,
.ui-select-trigger{
  display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;
  background:#f4eedd;border:1px solid var(--line,rgba(2,31,45,.1));
  border-radius:11px;padding:10px 10px 10px 12px;transition:.2s;cursor:pointer;text-align:left;
}
.ui-select .ctrl.loc-trigger:focus-within,
.ui-select.open .ctrl.loc-trigger,
.ui-select.open .ui-select-trigger{
  border-color:var(--amber,#ffbb22);
  box-shadow:0 0 0 3px rgba(255,187,34,.16);
  background:#fff;
}
.ui-select .loc-input,
.ui-select-label{
  flex:1;min-width:0;border:none;outline:none;background:transparent;
  font-family:'Sora',sans-serif;font-weight:700;font-size:.92rem;color:var(--navy,#021F2D);
  width:100%;line-height:1.3;padding:0;margin:0;cursor:pointer;
}
.ui-select .loc-input::placeholder{color:var(--muted,#5c6b72);font-weight:600}
.ui-select-caret{
  display:flex;align-items:center;justify-content:center;
  flex:0 0 22px;width:22px;height:22px;margin-left:6px;
  color:var(--muted,#5c6b72);cursor:pointer;pointer-events:auto;
}
.ui-select .loc-chev{
  display:block;width:14px;height:14px;
  transition:transform .2s;
}
.ui-select.open .ui-select-caret{color:var(--horizon,#154a6b)}
.ui-select.open .loc-chev{transform:rotate(180deg)}
.ui-select .loc-native,
.ui-select > select{
  position:absolute !important;width:1px !important;height:1px !important;
  padding:0 !important;margin:-1px !important;overflow:hidden !important;
  clip:rect(0,0,0,0) !important;border:0 !important;background:none !important;
  opacity:0;pointer-events:none;
}
.ui-select .loc-menu{
  position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;
  background:#fff;border:1.5px solid var(--line,rgba(2,31,45,.1));border-radius:14px;
  box-shadow:0 18px 40px -18px rgba(2,31,45,.45);overflow:hidden;
  animation:uiSelectFade .18s cubic-bezier(.22,.61,.36,1) both;
}
.ui-select .loc-menu[hidden]{display:none}
.ui-select .loc-list{
  list-style:none;max-height:240px;overflow-y:auto;padding:6px;margin:0;scrollbar-width:thin;
}
.ui-select .loc-list li{
  display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;
  cursor:pointer;font-size:.88rem;font-weight:600;color:var(--navy,#021F2D);transition:background .12s;
}
.ui-select .loc-list li:hover,
.ui-select .loc-list li.active{background:rgba(255,187,34,.12)}
.ui-select .loc-list li.sel{background:var(--navy,#021F2D);color:var(--ivory,#fffdf3)}
.ui-select .loc-list li.sel:hover{background:#0a2c3c}
.ui-select .loc-list li .txt{flex:1;min-width:0;line-height:1.25}
.ui-select .loc-list li .txt .name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Time / short-label menus: grow to fit "11:00 AM" instead of ellipsizing */
.ui-select.ui-select--fit .loc-menu{
  left:auto;right:0;min-width:max(100%,168px);width:max-content;
}
.ui-select.ui-select--fit .loc-list li{
  gap:8px;padding:9px 10px;
}
.ui-select.ui-select--fit .loc-list li .txt{min-width:auto;flex:1 0 auto}
.ui-select.ui-select--fit .loc-list li .txt .name{
  overflow:visible;text-overflow:unset;white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.ui-select.ui-select--fit .loc-input{
  text-overflow:clip;font-variant-numeric:tabular-nums;
}
.ui-select.ui-select--locked .loc-input{
  caret-color:transparent;
  cursor:pointer;
  user-select:none;
  -webkit-user-select:none;
}
.ui-select.ui-select--fit .ui-select-caret{
  margin-left:2px;flex:0 0 18px;width:18px;
}
.ui-select .loc-list li .check{flex:0 0 auto;opacity:0;display:flex}
.ui-select .loc-list li.sel .check{opacity:1;color:var(--amber,#ffbb22)}
.ui-select .loc-list .loc-empty{
  padding:18px 12px;text-align:center;color:var(--muted,#5c6b72);font-size:.84rem;font-weight:500;cursor:default;
}
.ui-select .loc-list .loc-empty:hover{background:transparent}
@keyframes uiSelectFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* Admin: match white form fields; chevron sits in a fixed slot */
body.admin .ui-select .ctrl.loc-trigger{
  background:#fff;
  border:1.5px solid var(--line);
  border-radius:10px;
  min-height:42px;
  padding:0 8px 0 12px;
  gap:0;
}
body.admin .ui-select .loc-input{
  font-family:inherit;
  font-weight:600;
  font-size:.92rem;
  height:39px;
  line-height:39px;
  caret-color:transparent;
}
body.admin .ui-select.open .loc-input{caret-color:var(--navy)}
body.admin .ui-select-caret{
  flex:0 0 28px;width:28px;height:28px;margin-left:4px;
}
body.admin .filters .ui-select{min-width:180px}
body.admin .filters .ui-select .loc-menu{min-width:100%}
body.admin label.field > .ui-select{margin:0}
body.admin .form .ui-select .loc-menu{min-width:100%}

/* Multi-select search dropdown (chips + checklist) */
.ui-select--multi{display:flex;flex-direction:column;gap:8px}
.ui-select--multi .ui-multi-chips{
  display:flex;flex-wrap:wrap;gap:6px;margin:0;
}
.ui-select--multi .ui-multi-chips[hidden]{display:none !important}
.ui-select--multi .ui-multi-chip{
  display:inline-flex;align-items:center;gap:6px;max-width:100%;
  border:1px solid var(--line,rgba(2,31,45,.12));
  background:rgba(2,31,45,.04);color:var(--navy,#021F2D);
  border-radius:999px;padding:5px 8px 5px 10px;
  font-size:.78rem;font-weight:700;line-height:1.2;cursor:pointer;
}
.ui-select--multi .ui-multi-chip span:first-child{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:18ch;
}
.ui-select--multi .ui-multi-chip .x{
  display:inline-flex;align-items:center;justify-content:center;
  width:16px;height:16px;border-radius:50%;
  background:rgba(2,31,45,.1);font-size:.85rem;line-height:1;flex:0 0 auto;
}
.ui-select--multi .ui-multi-chip:hover{background:rgba(255,187,34,.18);border-color:rgba(255,187,34,.55)}
body.admin .ui-select--multi .loc-input{caret-color:var(--navy)}
body.admin .ui-select--multi .loc-input::placeholder{font-weight:500}
