/* Reusable LakeLocale controls — use on any public page. */
.ll-button{appearance:none;display:inline-flex;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:12px 17px;border:1px solid transparent;border-radius:10px;background:#5157C9;color:#fff;font:800 .82rem 'DM Sans',Arial,sans-serif;cursor:pointer;transition:background .15s,box-shadow .15s}
.ll-button:hover:not(:disabled){background:#3F46AD;box-shadow:0 5px 15px #5157C92c}
.ll-button:disabled{opacity:.55;cursor:not-allowed}
.ll-button:focus-visible,.ll-select:focus-within .ll-select-field{outline:2px solid #a9c4ff;outline-offset:2px}
.ll-button.secondary{background:#fff;border-color:#dbe4f0;color:#5157C9}
.ll-select{position:relative;width:100%;font-size:.82rem}
.ll-select-field{position:relative;display:flex;align-items:center;min-height:44px;border:1px solid #e3e9f0;border-radius:10px;background:#fff}
.ll-select-field:focus-within{border-color:#a1bfff}
.ll-select-input{appearance:none;border:0!important;outline:0!important;background:transparent!important;padding:11px 35px 11px 12px!important;width:100%;font:inherit;color:#3b4b5e}
.ll-select-input::placeholder{color:#8a94a6}
.ll-select-chevron{position:absolute;right:3px;top:3px;bottom:3px;width:33px;border:0;background:transparent;color:#60748e;display:grid;place-items:center;cursor:pointer}
.ll-select-chevron svg{width:17px;height:17px;transition:transform .15s}
.ll-select.open .ll-select-chevron svg{transform:rotate(180deg)}
.ll-select-popup{position:absolute;z-index:2000;top:calc(100% + 5px);left:0;right:0;max-height:250px;overflow-y:auto;overscroll-behavior:contain;padding:5px;background:white;border:1px solid #dce5f0;border-radius:11px;box-shadow:0 12px 32px #233c5930}
.ll-select-popup[hidden],.ll-select-option[hidden],.ll-select-empty[hidden]{display:none!important}
.ll-select-option{appearance:none;display:block;text-align:left;width:100%;padding:10px 11px;background:transparent;border:0;border-radius:7px;color:#2d3c50;font:600 .81rem 'DM Sans',Arial,sans-serif;cursor:pointer}
.ll-select-option:hover,.ll-select-option:focus-visible{background:#eff4ff;color:#5157C9;outline:0}
.ll-select-option[aria-selected=true]{background:#eef4ff;color:#5157C9}
.ll-select-empty{padding:15px;text-align:center;color:#8b97a5;font-size:.78rem}
.directory-filter-form .ll-button{width:100%;margin-top:12px}
.directory-filter-form .ll-select{margin:0}
@media(max-width:760px){.directory-filter-form .ll-select{grid-row:2;grid-column:2}}
@media(max-width:560px){.directory-filter-form .ll-select{grid-row:auto;grid-column:auto}}

/* Unified searchable and non-searchable drop-downs. */
.ll-select-field{transition:border-color .15s,box-shadow .15s}
.ll-select.open .ll-select-field{border-color:#9cbaff;box-shadow:0 0 0 3px #5157C913}
.ll-select-input[readonly]{cursor:pointer;user-select:none}
.ll-select-option{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ll-select-option[aria-selected="true"]{font-weight:800;background:#ebf2ff;color:#4148AF}
.ll-select-option[aria-selected="true"]::after{content:"✓";font-size:.85rem;color:#5157C9;flex:none}
.ll-select-option:focus-visible{outline:2px solid #a6c0fa;outline-offset:-2px}
.directory-filter-group .ll-select.ll-sort-select{flex:0 1 165px;width:165px;min-width:125px}
.directory-filter-group .ll-select.ll-sort-select .ll-select-input{font-weight:700}
@media(max-width:850px){
 .directory-filter-group .ll-select.ll-sort-select{flex:0 1 140px;width:140px;min-width:108px}
}
@media(max-width:650px){
 .directory-filter-group .ll-select.ll-sort-select{flex:0 1 115px;width:115px;min-width:90px}
 .directory-filter-group .ll-select.ll-sort-select .ll-select-input{font-size:.73rem;padding-left:9px!important}
}
