.efw-wrap{ position: relative; display: inline-block; font-family: inherit; }
.efw-click{ cursor: pointer; text-decoration: underline; font-weight: 600; }
.efw-dropdown{ position: absolute; left: 0; top: calc(100% + 12px); z-index:10; display: none; transform-origin: top center; transition: transform 260ms cubic-bezier(.2,.9,.2,1), opacity 260ms ease; box-shadow: 0 10px 30px rgba(0,0,0,0.15); border-radius: 10px; background: #fff; min-width: 220px; }
.efw-dropdown .efw-dropdown-inner{ overflow:auto; padding: 0px; max-height: 300px; width: 100%; box-sizing: border-box; }
.efw-wrap.efw-open .efw-dropdown{ display: block; transform: perspective(600px) scaleY(1) translateY(0); opacity: 1; }
.efw-dropdown::before{ content: ''; position: absolute; top: -8px; left: 18px; width: 14px; height: 14px; background: #fff; transform: rotate(45deg); box-shadow: -2px -2px 4px rgba(0,0,0,0.03); }

/* initial hidden state for animation */
.efw-dropdown{ transform: perspective(600px) scaleY(.85) translateY(-6px); opacity: 0; }

/* mobile adjustments */
@media (max-width: 480px){
    .efw-dropdown{ position: fixed; left: 8px; right: 8px; top: auto; bottom: 12px; width: auto !important; max-height: 60vh; border-radius: 8px; }
}
