.library-home{height:auto;overflow:auto}.library-home .site-header{height:82px}.library-home .library-main{display:block;height:auto;min-height:calc(100dvh - 82px);max-width:1240px;margin:0 auto;padding:32px 28px 56px}.library-hero{background:linear-gradient(120deg,#182c5d,#245dcc);border-radius:16px;padding:32px 36px;color:#fff;box-shadow:0 8px 26px #23487e15}.library-hero .eyebrow{color:#b8d3ff}.library-hero h1{font:30px Candal,sans-serif;color:#fff;margin:12px 0}.library-hero p{color:#dbe7ff;margin:0;font-size:14px}.library-total{display:inline-block;margin-top:22px;background:#ffffff16;border:1px solid #ffffff35;border-radius:7px;padding:5px 10px;font-size:11px}.library-browser{margin-top:26px}.library-filters{display:flex;align-items:end;gap:16px;background:#fff;border:1px solid #dce5f1;border-radius:12px;padding:18px 20px}.library-filters label{display:grid;gap:7px;font-size:11px;font-weight:600;color:#526b8d;min-width:210px}.library-filters .library-search{flex:1}.library-filters input,.library-filters select{width:100%;min-height:42px;padding:10px 12px;border:1px solid #cbd9ed;border-radius:8px;background:#f9fbff;color:#25466f}.piece-count{color:#6b7f9b;font-size:12px;margin:18px 2px 12px}.practice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.practice-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #d9e3f1;border-radius:13px;text-decoration:none;color:#244678;overflow:hidden;transition:transform .16s,box-shadow .16s,border-color .16s}.practice-card:hover{transform:translateY(-3px);border-color:#9cbae7;box-shadow:0 8px 22px #1d447a13}.practice-cover{height:180px;padding:14px;background:#e5ebf4;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #e0e7f1}.practice-cover img{height:100%;max-width:100%;width:auto;object-fit:contain;box-shadow:0 2px 8px #16355b24}.practice-cover .cover-fallback{font-size:48px;color:#779bc9}.practice-card-copy{padding:18px;display:flex;flex:1;flex-direction:column}.practice-card-meta{font-size:10px;color:#7b8da6;margin:0 0 8px}.practice-card h2{font:16px/1.5 Candal,sans-serif;color:#234b86;margin:0 0 12px}.practice-card-status{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.practice-card-status span{font-size:10px;background:#eff4fb;color:#547096;border-radius:5px;padding:4px 7px}.practice-card-status .audio-available{background:#e6f3ee;color:#39745d}.practice-card-status .audio-pending{background:#f8f0df;color:#8a6a28}.practice-card-open{font-size:12px;font-weight:700;color:#245dcc;display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:14px;border-top:1px solid #e7edf6}.library-empty{text-align:center;padding:40px 20px;color:#6d819d}.library-return{color:#dce9ff;font-size:12px;text-decoration:none;white-space:nowrap}.library-return:hover{text-decoration:underline}@media(max-width:900px){.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-home .library-main{padding:24px 20px 40px}}@media(max-width:600px){.library-home .site-header{height:auto;min-height:70px;padding:12px 16px;gap:12px;flex-wrap:wrap}.library-home .site-header img{width:165px}.library-home .back-link{display:none}.library-home .preview-badge{font-size:8px;letter-spacing:.7px}.library-home .library-main{padding:18px 14px 32px}.library-hero{padding:24px 20px;border-radius:12px}.library-hero h1{font-size:25px}.library-hero p{font-size:12px}.library-filters{padding:14px;display:grid;gap:12px}.library-filters label{min-width:0}.practice-grid{grid-template-columns:1fr;gap:14px}.practice-cover{height:170px}.practice-card-copy{padding:16px}.library-return{font-size:10px}}@media(prefers-reduced-motion:reduce){.practice-card{transition:none}.practice-card:hover{transform:none}}

@media(max-width:750px){body:not(.library-home) .site-header{height:auto;min-height:76px;flex-wrap:wrap;gap:10px;padding:12px 16px}body:not(.library-home) .site-header img{width:165px}body:not(.library-home) .site-header .preview-badge{order:4;flex-basis:100%;font-size:8px}body:not(.library-home) .site-header .back-link{display:none}.library-return{margin-left:auto}}
.library-home .site-header img{height:56px;object-fit:cover}@media(max-width:600px){.library-home .site-header img{height:40px}}

/* Use the Music Library's portrait score covers and publisher-style labels. */
.practice-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:30px 20px}.practice-card{display:flex;background:transparent;border:0;border-radius:0;overflow:visible;box-shadow:none;transition:none}.practice-card:hover{transform:none;border:0;box-shadow:none}.practice-cover{display:block;position:relative;width:100%;height:auto;aspect-ratio:3/4;padding:0;overflow:hidden;margin-bottom:12px;border:1px solid #94a3b83d;border-radius:4px;background:#fff;box-shadow:0 4px 13px #0f172a14;transition:transform .18s,box-shadow .18s}.practice-cover img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;background:#fff;box-shadow:none}.practice-card:hover .practice-cover{transform:translateY(-3px);box-shadow:0 10px 24px #0f172a24}.practice-card-copy{padding:0;background:transparent}.practice-card h2{font:700 16px/1.28 'Segoe UI',Arial,sans-serif;letter-spacing:-.18px;color:#213654;margin:0 0 8px}.practice-card-meta{font-size:10px;order:1;margin-bottom:9px}.practice-card-status{order:2;gap:5px;margin-top:0}.practice-card-status span{font-size:9px;padding:3px 5px}.practice-card-open{order:3;margin-top:10px;padding-top:0;border:0;font-size:11px}.practice-audio-icon{position:absolute;right:7px;top:7px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fffffff2;color:#245dcc;border:1px solid #cbd5e1e6;box-shadow:0 3px 9px #0f172a1f}.practice-audio-icon svg{width:17px;height:17px}.practice-audio-icon.audio-not-ready{color:#8493a8}.practice-cover .cover-fallback{display:grid;place-items:center;height:100%}@media(max-width:1100px){.practice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.practice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 12px}.practice-card h2{font-size:12px}.practice-cover{height:auto}.practice-card-copy{padding:0}}@media(max-width:390px){.practice-grid{grid-template-columns:1fr}.practice-cover{max-width:310px;margin-left:auto;margin-right:auto}.practice-card-copy{width:100%;max-width:310px;margin:0 auto}}@media(prefers-reduced-motion:reduce){.practice-cover{transition:none}.practice-card:hover .practice-cover{transform:none}}

.library-hero{background:linear-gradient(125deg,#073f50,#087c86 70%,#146f82);box-shadow:0 12px 32px #087c862b;border:1px solid #32c6cc}.library-hero .eyebrow{color:#a9f6ed}.library-hero p{color:#e1fffb}.library-total{background:#ffffff1f}.library-filters label,.piece-count,.practice-card-meta{color:#526785}
