.library-view{padding:2rem 0}.library-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.library-heading h1{font-size:clamp(2rem,4vw,3.5rem);margin:0}.library-search{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:1.5rem 0}.library-search input{min-width:0;width:100%;flex:1 1 12rem}.library-trail{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0}.library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:1.25rem}.library-card{display:flex;flex-direction:column;gap:.65rem;align-items:stretch;white-space:normal;overflow-wrap:anywhere;text-align:left;background:transparent;border:0;padding:0;cursor:pointer;min-width:0;color:inherit}.library-card img,.library-placeholder{width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;background:transparent;border-radius:8px}.library-placeholder{display:grid;place-items:center;padding:1rem;font-weight:700}.library-card strong{font-size:1.05rem;line-height:1.4}.library-card .muted{font-size:.8rem}.library-card:focus-visible{outline:3px solid #195c43;outline-offset:5px}.library-pages{display:flex;gap:1rem;margin-top:1.5rem}.library-dialog{width:min(92vw,640px);padding:1.5rem;border:0;border-radius:12px}.library-dialog::backdrop{background:#101b16bd}.library-dialog header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.library-dialog h2{margin:0;font-size:1.5rem}.library-dialog p{line-height:1.6;white-space:pre-line}.library-player{width:min(94vw,1100px);background:#101b16;color:#fff}.library-player video{display:block;width:100%;max-height:72vh;margin-top:1rem;background:#000}.library-player .secondary{color:inherit}.library-status{min-height:1.5em}.library-view[hidden],.library-search[hidden]{display:none}@media(max-width:600px){.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.library-view{padding:1rem 0}.library-dialog{padding:1rem}}

@media(max-width:359px){.library-grid{grid-template-columns:1fr}}
#library-continue{margin:1rem 0 2rem}#library-continue[hidden]{display:none}.library-resume-label{font-size:.85rem;font-weight:500}.library-card progress{width:100%;height:8px;accent-color:var(--green,#185f43)}#library-restart{margin:.5rem 0 .5rem .5rem}
