/* Wali Impex: custom select (shared). Field and list open as one connected piece. */
.wsel{position:relative;width:100%}
.wsel select{position:absolute;inset:0;opacity:0;pointer-events:none;width:100%;height:100%}
.wsel-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;cursor:pointer;
  transition:border-color .2s ease,box-shadow .2s ease,border-radius .2s ease}
.wsel-btn .wsel-val{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wsel-btn .wsel-val.is-ph{opacity:.6}
.wsel-btn svg{flex:none;width:16px;height:16px;transition:transform .35s cubic-bezier(.16,1,.3,1)}
.wsel.is-open .wsel-btn svg{transform:rotate(180deg)}
.wsel.is-open .wsel-btn{border-bottom-left-radius:0 !important;border-bottom-right-radius:0 !important}

.wsel-list{position:absolute;left:0;right:0;top:100%;z-index:60;margin:0;padding:6px;list-style:none;
  background:var(--ws-bg,#fff);color:var(--ws-fg,#000);
  border:var(--ws-bw,1.5px) solid var(--ws-bc,#1F3A93);border-top:0;border-radius:0 0 var(--ws-r,12px) var(--ws-r,12px);
  box-shadow:0 24px 40px -22px rgba(10,20,60,.45);max-height:min(360px,60vh);overflow-y:auto;overscroll-behavior:contain;
  transform-origin:50% 0;clip-path:inset(0 0 100% 0);opacity:0;visibility:hidden;
  transition:clip-path .4s cubic-bezier(.16,1,.3,1),opacity .2s ease,visibility 0s linear .4s}
.wsel.is-open .wsel-list{clip-path:inset(0 0 -40px 0);opacity:1;visibility:visible;transition:clip-path .45s cubic-bezier(.16,1,.3,1),opacity .15s ease,visibility 0s}
.wsel-list::before{content:"";position:absolute;left:12px;right:12px;top:0;height:1px;background:var(--ws-bc,#1F3A93);opacity:.18}
.wsel-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:calc(var(--ws-r,12px) - 4px);cursor:pointer;
  font:inherit;transition:background-color .15s ease,color .15s ease,padding .25s cubic-bezier(.16,1,.3,1)}
.wsel-opt svg{width:16px;height:16px;flex:none;opacity:0;transform:scale(.5);transition:opacity .2s ease,transform .3s cubic-bezier(.16,1,.3,1)}
.wsel-opt.is-active{background:var(--ws-hover,rgba(31,58,147,.08));padding-left:16px}
.wsel-opt[aria-selected=true]{font-weight:600;color:var(--ws-accent,#1F3A93)}
.wsel-opt[aria-selected=true] svg{opacity:1;transform:none}
@media (prefers-reduced-motion:no-preference){
  .wsel.is-open .wsel-opt{animation:wsel-in .4s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--i,0) * 28ms)}
}
@keyframes wsel-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.wsel-list,.wsel.is-open .wsel-list{transition:opacity .15s ease,visibility 0s}}
