.plex-library{min-width:0;scroll-margin-top:var(--ui-space-20)}
.plex-browse-controls{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-space-18);flex-wrap:wrap;margin-bottom:var(--ui-space-16)}
.plex-browse-controls[hidden]{display:none}
.plex-tabs{display:flex;max-width:100%;gap:var(--ui-space-6);border:1px solid var(--line);padding:var(--ui-space-4);border-radius:var(--field-radius,28px)}
.plex-tabs button{border:0;background:transparent;border-radius:var(--button-radius,22px);min-width:var(--ui-size-95);min-height:var(--ui-size-42);padding:var(--ui-space-8) var(--ui-space-20);color:var(--muted)}
.plex-tabs button[aria-pressed=true]{background:var(--accent);color:var(--on-accent,#182010)}
.plex-filter{display:flex;gap:var(--ui-space-12);align-items:center;max-width:100%;flex-wrap:wrap}
.plex-filter select{min-width:0;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:var(--field-radius,9px);min-height:var(--ui-size-44);max-width:var(--ui-size-220);padding:var(--ui-space-8) var(--ui-space-12)}
.plex-query{display:flex;min-width:0;border-bottom:1px solid var(--line);max-width:100%}
.plex-query input{font-size:var(--ui-font-input);border:0;background:transparent;color:var(--text);width:var(--ui-size-190);min-width:0;padding:var(--ui-space-10) var(--ui-space-2);outline-offset:var(--ui-space-2)}
.plex-query .icon-button{border:0}
.plex-status{font-size:var(--ui-font-12);min-height:var(--ui-size-18);margin:var(--ui-space-8) 0 var(--ui-space-18)}
.plex-status:empty{min-height:0;margin:0 0 var(--ui-space-18)}
.plex-grid{display:grid;grid-template-columns:repeat(var(--ui-plex-columns),minmax(0,1fr));gap:var(--ui-space-26) var(--ui-space-18)}
.plex-card{border:0;background:transparent;text-align:left;color:var(--text);padding:0;min-width:0;display:flex;flex-direction:column;align-items:stretch}
.plex-poster{display:block;position:relative;aspect-ratio:2/3;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--panel),var(--accent) 12%),var(--surface));border-radius:var(--icon-radius,8px);isolation:isolate;width:100%;box-shadow:0 7px 24px #0004}
.plex-poster img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .2s}
.plex-image-fallback{position:absolute;inset:0;display:grid;place-items:center;color:color-mix(in srgb,var(--muted),var(--accent) 25%)}
.plex-image-fallback svg{width:var(--ui-icon-34);height:var(--ui-icon-34)}
.plex-card:hover .plex-poster img{transform:scale(1.035)}
.plex-card:focus-visible{outline:2px solid var(--accent);outline-offset:var(--ui-space-6);border-radius:var(--icon-radius,8px)}
.plex-card-title{font-size:var(--ui-font-14);line-height:1.4;margin:var(--ui-space-11) 0 var(--ui-space-4);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.plex-card-meta{font-size:var(--ui-font-11);color:var(--muted)}
.plex-pagination{display:flex;justify-content:center;align-items:center;gap:var(--ui-space-6);flex-wrap:wrap;margin:var(--ui-space-24) 0 0}.plex-pagination button{min-width:var(--ui-size-40);min-height:var(--ui-size-44);padding:var(--ui-space-8)}.plex-pagination button[aria-current=page]{background:var(--accent);color:var(--on-accent,#202517);opacity:1;border-color:var(--accent)}.plex-page-label{width:100%;text-align:center;font-size:var(--ui-font-11);color:var(--muted);margin-top:var(--ui-space-5)}
.plex-detail{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius,12px)}
.plex-detail-hero{position:relative;min-height:var(--ui-size-350);isolation:isolate;overflow:hidden;background:var(--surface)}
.plex-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.7}
.plex-detail-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--bg),transparent 7%),color-mix(in srgb,var(--bg),transparent 40%)),linear-gradient(0deg,var(--surface),transparent 65%)}
.plex-detail-back{position:absolute;top:var(--ui-space-14);left:var(--ui-space-14);z-index:1;background:#111c!important;color:#f9f7f1;border:1px solid #ffffff30!important}
.plex-detail-content{display:grid;grid-template-columns:var(--ui-size-155) minmax(0,1fr);align-items:end;gap:var(--ui-space-28);padding:var(--ui-space-76) var(--ui-space-32) var(--ui-space-32)}
.plex-detail-poster{max-width:var(--ui-size-180);align-self:start}
.plex-detail-copy{min-width:0;overflow-wrap:anywhere}
.plex-detail-copy h2{font-size:var(--ui-font-detail-title);line-height:1.12;letter-spacing:-1px;margin:0 0 var(--ui-space-14);overflow-wrap:anywhere}
.plex-facts{display:flex;gap:var(--ui-space-7) var(--ui-space-16);flex-wrap:wrap;font-size:var(--ui-font-12);color:var(--muted);margin:0 0 var(--ui-space-10)}
.plex-genres{font-size:var(--ui-font-12);color:var(--accent);margin:0 0 var(--ui-space-18)}
.plex-tagline{font-size:var(--ui-font-13);color:var(--muted);font-style:italic;margin:0 0 var(--ui-space-10)}
.plex-summary{font-size:var(--ui-font-14);line-height:1.65;color:var(--text);white-space:pre-line;max-width:66ch;margin:0 0 var(--ui-space-23)}
.plex-prepare{display:inline-flex;align-items:center;justify-content:center;gap:var(--ui-space-10);min-height:var(--ui-size-48)}
.plex-detail-info{padding:0 var(--ui-space-32) var(--ui-space-22);background:var(--surface)}
.plex-detail-info:empty{padding:0}
.plex-detail-info p{margin:0;padding:var(--ui-space-7) 0;font-size:var(--ui-font-12);line-height:1.6;color:var(--text);display:grid;grid-template-columns:var(--ui-size-100) minmax(0,1fr);gap:var(--ui-space-15)}
.plex-detail-info p>span{min-width:0;overflow-wrap:anywhere;color:var(--muted)}
.plex-children{--ui-explorer-columns:var(--ui-season-columns);--ui-plex-columns:var(--ui-season-columns);padding:var(--ui-space-24) var(--ui-space-28) var(--ui-space-28)}
.plex-children h3{font-size:var(--ui-font-17);font-weight:500;margin:0 0 var(--ui-space-18)}
.plex-episodes{grid-template-columns:repeat(var(--ui-episode-columns),minmax(0,1fr))}
.plex-episodes .plex-poster{aspect-ratio:16/9}
.plex-episode-number{position:absolute;bottom:var(--ui-space-9);left:var(--ui-space-9);font-size:var(--ui-font-10);background:#111d;color:#f9f7f1;padding:var(--ui-space-4) var(--ui-space-7);border-radius:4px}
@media(prefers-reduced-motion:reduce){.plex-poster img{transition:none}}
:where(html[data-layout~="max-720"]) .plex-detail-content{grid-template-columns:var(--ui-size-105) minmax(0,1fr);gap:var(--ui-space-18);padding:var(--ui-space-76) var(--ui-space-20) var(--ui-space-24)}:where(html[data-layout~="max-720"]) .plex-detail-info{padding:0 var(--ui-space-20) var(--ui-space-18)}:where(html[data-layout~="max-720"]) .plex-summary{font-size:var(--ui-font-13)}:where(html[data-layout~="max-720"]) .plex-children{padding:var(--ui-space-20)}:where(html[data-layout~="max-720"]) .plex-grid{gap:var(--ui-space-21) var(--ui-space-13)}
:where(html[data-layout~="max-480"]) .plex-browse-controls{gap:var(--ui-space-14)}:where(html[data-layout~="max-480"]) .plex-filter{width:100%}:where(html[data-layout~="max-480"]) .plex-query{flex:1}:where(html[data-layout~="max-480"]) .plex-query input{flex:1;width:100%}:where(html[data-layout~="max-480"]) .plex-tabs{width:100%}:where(html[data-layout~="max-480"]) .plex-tabs button{flex:1;min-width:0}:where(html[data-layout~="max-480"]) .plex-detail-content{display:block;padding:var(--ui-space-76) var(--ui-space-18) var(--ui-space-22)}:where(html[data-layout~="max-480"]) .plex-detail-poster{width:var(--ui-size-92);margin-bottom:var(--ui-space-20)}:where(html[data-layout~="max-480"]) .plex-detail-info{padding:0 var(--ui-space-18) var(--ui-space-18)}:where(html[data-layout~="max-480"]) .plex-detail-info p{grid-template-columns:var(--ui-size-76) minmax(0,1fr);gap:var(--ui-space-9)}:where(html[data-layout~="max-480"]) .plex-children{padding:var(--ui-space-20) var(--ui-space-16)}:where(html[data-layout~="max-480"]) .plex-prepare{width:100%}:where(html[data-layout~="max-480"]) .plex-card-title{font-size:var(--ui-font-13)}:where(html[data-layout~="max-480"]) .plex-detail{border-radius:var(--field-radius,9px)}

.explorer-panel .plex-grid:not(.plex-episodes){grid-template-columns:repeat(var(--ui-explorer-columns),minmax(0,1fr));gap:var(--ui-space-16) var(--ui-space-12)}.explorer-panel .plex-browse-controls{position:sticky;top:calc(-1 * var(--ui-space-8));background:var(--surface);z-index:2;padding:var(--ui-space-4) 0;margin-bottom:var(--ui-space-10)}.explorer-panel .plex-query{border:1px solid var(--line);border-radius:var(--radius,12px);padding-left:var(--ui-space-8)}.explorer-panel .plex-tabs{border-radius:var(--radius,12px)}.explorer-panel .plex-tabs button{border-radius:var(--field-radius,9px);min-width:var(--ui-size-72);padding:var(--ui-space-6) var(--ui-space-10)}.explorer-panel .plex-status:empty{margin-bottom:0}
:where(html[data-layout~="max-700"]) .explorer-panel .plex-browse-controls{flex-wrap:nowrap;gap:var(--ui-space-8)}:where(html[data-layout~="max-700"]) .explorer-panel .plex-tabs{width:auto;flex-shrink:0;gap:var(--ui-space-2);padding:var(--ui-space-3)}:where(html[data-layout~="max-700"]) .explorer-panel .plex-tabs button{min-width:var(--ui-size-45);min-height:var(--ui-size-32);font-size:var(--ui-font-12);padding:var(--ui-space-4) var(--ui-space-8)}:where(html[data-layout~="max-700"]) .explorer-panel .plex-filter{width:auto;flex:1;min-width:0;gap:var(--ui-space-5)}:where(html[data-layout~="max-700"]) .explorer-panel .plex-query{min-width:0}:where(html[data-layout~="max-700"]) .explorer-panel .plex-query input{width:0;font-size:var(--ui-font-input);padding:var(--ui-space-6) var(--ui-space-2)}:where(html[data-layout~="max-700"]) .explorer-panel .plex-query .icon-button{width:var(--ui-size-30);min-width:var(--ui-size-30);min-height:var(--ui-size-36);height:var(--ui-size-36);padding:var(--ui-space-5)}:where(html[data-layout~="max-700"]) .explorer-panel .plex-grid:not(.plex-episodes){gap:var(--ui-space-12) var(--ui-space-8)}

.plex-proposal{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-8)}

.plex-query{position:relative;align-items:center}.plex-query input{padding-right:var(--ui-space-30)!important}.plex-search-glyph{position:absolute;right:var(--ui-space-9);color:var(--muted);pointer-events:none}.plex-search-glyph .ui-icon{width:var(--ui-icon-18);height:var(--ui-icon-18)}
.plex-quality{display:flex;gap:var(--ui-space-6)}.plex-quality button{min-width:var(--ui-size-48);padding:var(--ui-space-8) var(--ui-space-12)}.plex-quality button[aria-pressed=true]{background:var(--accent);color:var(--on-accent,#202517);border-color:var(--accent)}
.plex-proposal .plex-prepare{width:auto;min-height:var(--ui-size-44)}
.plex-detail-info p>.plex-credits{color:var(--text)}.plex-credit{display:inline;padding:var(--ui-space-2) 0;min-height:var(--ui-size-24);background:none;border:0;border-radius:3px;font-size:inherit;text-align:left;color:var(--accent)}.plex-credit:hover:not(:disabled){background:none;text-decoration:underline}.credit-separator{color:var(--muted)}
.plex-person-filter{margin:0 0 var(--ui-space-14)}.plex-person-filter button{max-width:100%;overflow-wrap:anywhere;display:inline-flex;align-items:center;gap:var(--ui-space-10);padding:var(--ui-space-5) var(--ui-space-10);min-height:var(--ui-size-32);color:var(--accent);font-size:var(--ui-font-12)}.plex-person-filter .ui-icon{width:var(--ui-icon-15);height:var(--ui-icon-15)}
.plex-source-choice{display:flex;flex-wrap:wrap;align-items:center;gap:var(--ui-space-8);font-size:var(--ui-font-12);color:var(--muted);max-width:100%}.plex-source-choice select{min-width:0;max-width:100%;padding:var(--ui-space-8);background:var(--panel);border:1px solid var(--line);color:var(--text)}
.plex-source-choice{flex-basis:100%}.plex-source-choice select{flex:1}.plex-network-errors{overflow-wrap:anywhere;margin-bottom:var(--status-bottom-space)}.plex-card-source{font-size:var(--ui-font-10);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:var(--ui-space-4)}
:where(html[data-layout~="max-700"]) .explorer-panel .plex-browse-controls{flex-wrap:wrap}:where(html[data-layout~="max-700"]) .plex-source-choice{width:100%}:where(html[data-layout~="max-700"]) .explorer-panel [data-refresh-catalog]{width:var(--ui-size-32);min-width:var(--ui-size-32);padding:var(--ui-space-5)}:where(html[data-layout~="max-700"]) .explorer-panel .plex-tabs{flex-shrink:1}

.plex-card,.plex-credit{box-shadow:none;background-image:none}.plex-poster,.plex-detail{box-shadow:var(--panel-shadow,none)}

/* Keep a full search field when the catalog shares a narrow screen with chat. */
:where(html[data-layout~="compact-catalog"]) .explorer-panel .plex-browse-controls{flex-wrap:wrap}
:where(html[data-layout~="compact-catalog"]) .explorer-panel .plex-tabs{flex:1}
:where(html[data-layout~="compact-catalog"]) .explorer-panel .plex-filter{order:3;flex-basis:100%;width:100%;min-width:0}
:where(html[data-layout~="compact-catalog"]) .explorer-panel .plex-query{flex:1;width:100%;min-width:0}
:where(html[data-layout~="compact-catalog"]) .explorer-panel .plex-query input{flex:1;width:100%;min-width:0}
