/* Shared compact libraries, inspired by Mobbin's Spotify library and Codecademy learning tabs. */
.music-library{min-width:0}.library-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.library-tools:empty{display:none}
.library-search{display:flex;align-items:center;gap:10px;flex:1 1 220px;min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--bg);padding:0 12px}.library-search svg{width:18px;height:18px;flex:none;color:var(--muted)}.library-search input{width:100%;min-width:0;min-height:44px;border:0!important;background:transparent!important;padding:10px 0!important;color:var(--ink);font:inherit;font-size:14px}.library-search:focus-within{outline:2px solid var(--primary);outline-offset:2px}.library-search input:focus{outline:none!important;box-shadow:none!important}
.library-filters{display:flex;gap:4px;padding:4px;background:var(--bg);border-radius:12px;max-width:100%}.library-filters button{display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:9px;background:transparent;color:var(--muted);min-height:40px;padding:8px 12px;white-space:nowrap;font:inherit;font-size:13px;cursor:pointer}.library-filters button[aria-pressed=true]{color:var(--primary);background:white;box-shadow:0 1px 5px #174b3b15;font-weight:600}.library-filters button span{font-size:11px;border-radius:6px;padding:2px 5px;background:var(--mint)}
.library-results{min-width:0}.library-results:focus-visible{outline:2px solid var(--primary);outline-offset:4px;border-radius:10px}.library-empty{padding:24px 8px;color:var(--muted);font-size:14px;line-height:1.6}
.library-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:16px;margin-top:4px}.library-count{font-size:12px;color:var(--muted)}.library-pages{display:flex;align-items:center;gap:12px;flex:none;font-size:12px;color:var(--muted)}.library-pages .btn{min-height:40px;min-width:40px;padding:8px;font-size:18px}.library-footer[hidden],.library-pages[hidden]{display:none}
.pupil-repertoire{margin-top:24px}.pupil-repertoire header{margin-bottom:20px}.music-library .repertoire-piece{padding:16px 4px}.music-library .repertoire-piece small{margin:4px 0 9px}.music-library .repertoire-piece .piece-meter{max-width:180px}.music-library .repertoire-history:last-child summary{border-bottom:0}
.library-piece{display:grid;grid-template-columns:40px minmax(0,1fr) 100px;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid var(--border);min-width:0}.library-piece:last-child{border-bottom:0}.library-piece .lesson-action-symbol{width:38px;height:38px}.library-piece h3{font-size:16px;line-height:1.35;margin:0 0 5px}.library-piece p,.library-piece small{font-size:12px;color:var(--muted);line-height:1.5}.library-piece-meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.library-piece-progress{text-align:right;display:grid;gap:7px;font-size:13px;color:var(--primary)}.library-piece-progress .studio-meter{height:5px}.library-piece-progress small{font-size:11px}
@media(max-width:600px){.library-tools{gap:12px}.library-search{flex-basis:100%}.library-filters{width:100%}.library-filters button{flex:1;gap:5px;padding:8px}.library-piece{grid-template-columns:32px minmax(0,1fr) 60px;gap:10px;padding:16px 0}.library-piece .lesson-action-symbol{width:30px;height:34px}.library-piece h3{font-size:15px}.library-piece-meta{gap:3px 8px}.library-piece-meta .library-last-date{display:none}.library-footer{gap:8px}.library-pages{gap:8px}.pupil-repertoire header{align-items:flex-start}.repertoire-achievement{padding:8px}.music-library .repertoire-piece-icon{width:30px;height:34px}.music-library .repertoire-piece small{font-size:10px}}

@media(max-width:360px){.library-piece{grid-template-columns:minmax(0,1fr) 54px}.library-piece>.lesson-action-symbol{display:none}.library-filters button{font-size:12px;padding:8px 6px;gap:4px}}
