.library-finder [hidden]{display:none!important}
.library-finder .lf-fields{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;margin:24px 0 12px}
.library-finder label{display:flex;flex-direction:column;gap:8px;font-size:16.5px;font-weight:700;color:var(--ink)}
.library-finder input,.library-finder select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);font:400 16px/1.5 var(--body);padding:10px 12px}
.library-finder input::placeholder{color:var(--dim);opacity:1}
.library-finder .lf-examples{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:20px 0}
.library-finder button{min-height:44px;padding:10px 14px;border:1px solid var(--pine);border-radius:6px;background:var(--card);color:var(--pine);font:700 14px/1.5 var(--body);cursor:pointer}
.library-finder button:hover{background:var(--sink)}
.library-finder :is(input,select,button,a,summary):focus-visible{outline:3px solid var(--pine);outline-offset:3px}
.library-finder .lf-status{font-weight:700}
.library-finder .lf-results{display:grid;grid-template-columns:1fr 1fr;gap:16px;list-style:none;margin:20px 0;padding:0}
.library-finder .lf-results li{min-width:0;margin:0;padding:0;display:flex;flex-direction:column}
.library-finder .lf-card{display:flex;flex-direction:column;gap:12px;flex:1;box-sizing:border-box;padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.library-finder .lf-card:hover{border-color:var(--pine)}
.library-finder .lf-card strong{font:700 22px/1.3 var(--body);text-decoration:underline;text-underline-offset:3px}
.library-finder .lf-card-meta{font:700 13px/1.5 var(--body);color:var(--pine)}
.library-finder .lf-card-description{font:400 16px/1.55 var(--body);color:var(--dim)}
.library-finder .lf-more{background:var(--pine);color:var(--card)}
.library-finder .lf-more:hover{background:var(--deep)}
@media(max-width:800px){.library-finder .lf-fields{grid-template-columns:1fr 1fr}.library-finder .lf-fields label:first-child{grid-column:1/-1}}
@media(max-width:560px){.library-finder .lf-fields,.library-finder .lf-results{grid-template-columns:1fr}}

.library-finder .lf-card{border-bottom-left-radius:0;border-bottom-right-radius:0}
.library-finder .lf-pick{flex-direction:row;align-items:center;gap:10px;box-sizing:border-box;min-height:48px;padding:12px 20px;border:1px solid var(--line);border-top:0;border-radius:0 0 6px 6px;background:var(--card);cursor:pointer}
.library-finder .lf-pick input{width:20px;height:20px;min-height:20px;flex:none;padding:0;margin:0;accent-color:var(--pine)}
.library-finder .lf-collection{margin:16px 0;padding:12px 16px;border:1px solid var(--line);border-radius:6px;background:var(--card)}
.library-finder .lf-collection summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:44px;line-height:1.5;padding:10px 0;box-sizing:border-box;cursor:pointer;font-weight:700}
.library-finder .lf-collection [data-lf-selection-count]{color:var(--pine)}
.library-finder .lf-collection-toggle{margin-left:auto;line-height:1}
.library-finder .lf-collection-toggle::before{content:"+"}
.library-finder .lf-collection[open] .lf-collection-toggle::before{content:"−"}
.library-finder .lf-selection-list{padding-left:0;list-style:none;margin:12px 0 0}
.library-finder .lf-selection-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;border-top:1px solid var(--line);padding:12px 0}
.library-finder .lf-selection-list a{overflow-wrap:anywhere;color:var(--pine);text-decoration:underline;text-underline-offset:3px}
