#lomo-listing-sort[hidden] { display:none!important; }
.lomo-sort-popover { position:relative; display:inline-block; width:max-content; max-width:100%; }
.lomo-sort-popover .lomo-sort-control { gap:18px; justify-content:space-between; min-width:205px; max-width:100%; text-align:left; }
.lomo-sort-arrow { font-size:18px; line-height:1; }
.lomo-sort-options { position:absolute; right:0; top:calc(100% + 6px); z-index:140; width:max-content; min-width:100%; max-width:min(320px,calc(100vw - 40px)); max-height:300px; overflow:auto; border:1px solid var(--ink); border-radius:0; background:var(--bg); color:var(--ink); box-shadow:0 12px 22px rgba(24,35,55,.09); padding:6px; }
.lomo-sort-options[hidden] { display:none!important; }
.lomo-sort-options:focus { outline:2px solid var(--accent); outline-offset:2px; }
.lomo-sort-option { display:flex; align-items:center; gap:10px; min-height:44px; padding:10px 12px; font:inherit; font-size:12px; font-weight:500; letter-spacing:.04em; cursor:pointer; white-space:normal; }
.lomo-sort-option:hover,.lomo-sort-option.is-active { background:var(--soft); }
.lomo-sort-option[aria-selected="true"] { font-weight:700; }
.lomo-sort-check { width:14px; flex:none; visibility:hidden; }
.lomo-sort-option[aria-selected="true"] .lomo-sort-check { visibility:visible; }
@media(max-width:767px) { .lomo-sort-popover .lomo-sort-control { min-width:190px; } }

/* Keep the sort trigger box and keyboard outline; hide only its ordinary border. */
.lomo-catalogue-filters #lomo-sort-trigger { border-color:transparent; }
