.library-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:25px}.library-hint{font-size:11px;color:var(--muted)}.library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.library-card{display:flex;flex-direction:column;text-align:left;gap:13px;border:1px solid var(--line);border-radius:10px;padding:15px;background:var(--surface);width:100%;min-width:0;transition:border-color .2s,transform .2s}.library-card:hover{border-color:#92704d;transform:translateY(-2px)}.library-card>.poster{width:100%;aspect-ratio:2/3}.library-copy{min-width:0}.library-copy h3{font-size:16px;font-weight:550;line-height:1.5;margin:6px 0 7px;overflow-wrap:anywhere}.library-copy p{font-size:11px;color:#8f9aa5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:35px}.library-copy .round-arrow{float:right;margin-top:10px}@media(max-width:1100px){.library-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.library-controls{align-items:stretch;flex-direction:column;gap:10px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.library-card{padding:11px}.library-copy h3{font-size:14px}.library-copy p{font-size:10px}}
.library-controls[hidden]{display:none!important}

.library-categories{display:flex;align-items:center;gap:28px;overflow-x:auto;border-bottom:1px solid var(--line);margin-bottom:22px}
.library-category{display:inline-flex;align-items:center;gap:9px;flex-shrink:0;border:0;border-bottom:2px solid transparent;background:transparent;padding:10px 3px 13px;color:var(--muted);font-size:14px;white-space:nowrap}
.library-category span{font-size:11px;font-variant-numeric:tabular-nums;background:var(--surface);border-radius:12px;padding:1px 8px}
.library-category:hover{color:var(--ink)}
.library-category.active{color:var(--accent);border-bottom-color:var(--accent)}
.library-category:focus-visible{outline-offset:-3px}

.episode-progress { margin-top:14px; }
.episode-caption { font-size:12px; color:var(--muted); margin:10px 0 8px; }
.episode-grid { display:flex; flex-wrap:wrap; gap:5px; }
.episode-box { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border:1px solid #626b74; border-radius:4px; color:#c5cbd1; background:#29323c; font-size:12px; font-variant-numeric:tabular-nums; }
.episode-box.scheduled { background:#665329; color:#ffe1a4; border-color:#a5853d; }
.episode-box.live { background:#8c4e25; color:#fff0db; border-color:#e8954f; }
.episode-box.ended { background:#294e45; color:#b7ebd6; border-color:#4d8f7a; }
.episode-box.cancelled { text-decoration:line-through; opacity:.55; }
.episode-box[aria-pressed=true] { outline:2px solid var(--accent); outline-offset:2px; }
.episode-legend { margin:12px 0; font-size:11px; color:var(--muted); }
.episode-history { margin-top:20px; }
.episode-history h3 { margin-bottom:10px; font-size:15px; }
.episode-screening { display:flex; flex-direction:column; align-items:flex-start; gap:5px; width:100%; padding:12px 0; border:0; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); text-align:left; }
.episode-screening span:last-child { font-size:12px; color:var(--muted); }
.screening-copy h3 small { display:block; font-size:12px; color:var(--muted); }

.library-entry{display:flex;flex-direction:column;min-width:0}.library-entry>.library-card{flex:1}.library-schedule{display:block;text-align:center;border:1px solid var(--line);border-top:0;border-radius:0 0 8px 8px;padding:10px;color:var(--accent);font-size:12px}.library-entry>.library-card{border-radius:10px 10px 0 0}.library-schedule:hover{background:var(--surface-2)}
