/* Sort and filter every list (Lane LS1). public/ls.js adds .ls-bar above each list; lib/html.js (LS) sends .ls-bar.ls-srv for a list the server pages. */
.ls-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin:8px 0;padding:10px 12px;background:var(--inset);border-radius:4px;font-size:14px;line-height:20px}
.ls-f{display:flex;flex-direction:column;gap:2px;min-width:0}
.ls-f label,.ls-l{color:var(--muted);font-weight:600;font-size:13px}
.ls-q{flex:1 1 220px}
.ls-bar input[type=search],.ls-bar input[type=text]{height:44px;width:100%;min-width:0;padding:0 10px;border:1px solid var(--edge);border-radius:4px;background:var(--raised);color:var(--ink);font:16px/1.2 var(--text)}
.ls-bar select{height:44px;max-width:240px;font-size:15px}
.ls-end{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin-left:auto}
.ls-n{margin:0;color:var(--muted)}
.ls-clear,.ls-go{min-height:44px;padding:0 14px;background:var(--raised);color:var(--brand);border:1px solid var(--edge);border-radius:4px;font:600 14px/1.2 var(--text);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center}
.ls-go{background:var(--brand);color:#fff;border-color:var(--brand)}
.ls-bar:not(.ls-active) .ls-clear{color:var(--muted)}
.ls-s .sd-btns{display:inline-flex}
.ls-hide{display:none!important}
.ls-none{color:var(--muted)}
.ls-vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.ls-ar{white-space:pre}
/* a header the server sorts is a link */
th a.ls-th{position:relative;display:inline-block;padding:11px 0;margin:-11px 0;color:inherit;text-decoration:underline;text-decoration-color:var(--edge);text-underline-offset:3px}
@media (max-width:480px){.ls-bar{padding:8px}.ls-bar select{max-width:100%}.ls-f:not(.ls-q){flex:1 1 140px}.ls-bar select{width:100%}.ls-end{margin-left:0;width:100%;justify-content:space-between}}
@media print{.ls-bar{display:none}}
