/*!
 * VidPly shared design tokens and utilities.
 *
 * Not linked on its own: `npm run build` prepends this file to episode.min.css,
 * listview.min.css and privacy-layer.min.css, so the values live in one place
 * without costing an extra request. Edit the source files, never the minified
 * output.
 */:root{--mpc-vidply-border:rgb(0 0 0 / 10%);--mpc-vidply-muted:rgb(0 0 0 / 60%);--mpc-vidply-radius:0.75rem;--mpc-vidply-text:#1a1a1a;--mpc-vidply-transition:200ms ease-out}.mpc-episode[data-theme=dark],.mpc-vidply-listview[data-theme=dark],[data-bs-theme=dark],[data-bs-theme=dark] .mpc-episode,[data-bs-theme=dark] .mpc-vidply-listview{--mpc-vidply-border:rgb(255 255 255 / 12%);--mpc-vidply-muted:rgb(255 255 255 / 65%);--mpc-vidply-text:#f2f2f2}@media (prefers-color-scheme:dark){:root:not([data-bs-theme=light]){--mpc-vidply-border:rgb(255 255 255 / 12%);--mpc-vidply-muted:rgb(255 255 255 / 65%);--mpc-vidply-text:#f2f2f2}}.mpc-episode-sr-only,.vidply-sr-only{border:0;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}/*!
 * VidPly episode card styles
 * Plain CSS, theme-aware via data-bs-theme / prefers-color-scheme.
 *
 * The card can sit in a full content column, a two-column grid, a slider or a
 * modal, so the layout keys off the available width (flex-wrap + flex-basis)
 * instead of viewport media queries.
 */:root{--mpc-vidply-episode-accent:#0a406e;--mpc-vidply-episode-cover:14rem;--mpc-vidply-episode-gap:1.5rem;--mpc-vidply-episode-on-accent:#fff;--mpc-vidply-episode-play-fill:#fff;--mpc-vidply-episode-play-size:7rem;--mpc-vidply-episode-surface:rgb(0 0 0 / 6%)}.mpc-episode[data-theme=dark],[data-bs-theme=dark],[data-bs-theme=dark] .mpc-episode{--mpc-vidply-episode-accent:#e8f0f8;--mpc-vidply-episode-on-accent:#0a2b47;--mpc-vidply-episode-play-fill:transparent;--mpc-vidply-episode-surface:rgb(255 255 255 / 8%)}@media (prefers-color-scheme:dark){:root:not([data-bs-theme=light]){--mpc-vidply-episode-accent:#e8f0f8;--mpc-vidply-episode-on-accent:#0a2b47;--mpc-vidply-episode-play-fill:transparent;--mpc-vidply-episode-surface:rgb(255 255 255 / 8%)}}.mpc-episode{align-items:flex-start;color:var(--mpc-vidply-text);display:flex;flex-wrap:wrap;gap:var(--mpc-vidply-episode-gap)}.mpc-episode-cover{flex:0 1 var(--mpc-vidply-episode-cover);min-width:0}.mpc-episode-main{display:flex;flex:1 1 20rem;flex-direction:column;gap:var(--mpc-vidply-episode-gap);min-width:0}.mpc-episode-header{align-items:flex-start;display:flex;gap:1.25rem}.mpc-episode-body{flex:1 1 auto;min-width:0}.mpc-episode-image,.mpc-episode-placeholder{aspect-ratio:1/1;display:block;height:auto;max-width:100%;object-fit:contain;width:100%}.mpc-episode-placeholder{background:var(--mpc-vidply-episode-surface);border:1px solid var(--mpc-vidply-border);border-radius:var(--mpc-vidply-radius)}.mpc-episode-play{align-items:center;background:var(--mpc-vidply-episode-play-fill);border:3px solid var(--mpc-vidply-episode-accent);border-radius:50%;color:var(--mpc-vidply-episode-accent);cursor:pointer;display:inline-flex;flex:none;height:var(--mpc-vidply-episode-play-size);justify-content:center;padding:0;transition:transform var(--mpc-vidply-transition);width:var(--mpc-vidply-episode-play-size)}.mpc-episode-play-icon{border-color:transparent transparent transparent currentcolor;border-style:solid;border-width:.85rem 0 .85rem 1.35rem;display:block;height:0;margin-left:.3rem;width:0}.mpc-episode-play[data-state=playing] .mpc-episode-play-icon{border-color:currentcolor;border-style:double;border-width:0 0 0 1.35rem;height:1.6rem;margin-left:0}.mpc-episode-play:hover{transform:scale(1.04)}.mpc-episode-play:focus-visible{outline:3px solid var(--mpc-vidply-episode-accent);outline-offset:3px}@media (prefers-reduced-motion:reduce){.mpc-episode-play{transition:none}.mpc-episode-play:hover{transform:none}}.mpc-episode .vidply-track-artwork{display:none}.mpc-episode-title>.mpc-episode-number{background:var(--mpc-vidply-episode-accent);border-radius:.25rem;color:var(--mpc-vidply-episode-on-accent);display:inline-block;font-size:.7em;font-weight:600;margin-inline-end:.3em;padding:.05em .35em;vertical-align:middle;width:auto}.mpc-episode-title{font-size:clamp(1.125rem, 1rem + .6vw, 1.75rem);font-weight:600;margin:0 0 .5rem;overflow-wrap:anywhere}.mpc-episode-meta{align-items:center;color:var(--mpc-vidply-muted);display:flex;flex-wrap:wrap;font-size:clamp(.8125rem, .78rem + .15vw, .9375rem);gap:.25rem 1rem;margin:0}.mpc-episode-date,.mpc-episode-duration{align-items:center;display:inline-flex;gap:.375rem}.mpc-episode-icon{flex:none;height:1em;width:1em}.mpc-episode-category-list{display:flex;flex-wrap:wrap;gap:.3rem .35rem;list-style:none;margin:0;padding:0}.mpc-episode-category{border:1px solid var(--mpc-vidply-border);border-radius:.25rem;line-height:1.2;padding:.15rem .4rem}.mpc-episode-artist{color:var(--mpc-vidply-muted);margin:.5rem 0 0}.mpc-episode-description{margin:.75rem 0 0;overflow-wrap:anywhere}.mpc-episode-actions{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:.75rem 0 0}.mpc-episode-download{align-items:center;color:var(--mpc-vidply-episode-accent);display:inline-flex;font-size:clamp(.8125rem, .78rem + .15vw, .9375rem);gap:.4rem;min-height:1.5rem}.mpc-episode-download:focus-visible{outline:3px solid var(--mpc-vidply-episode-accent);outline-offset:2px}.mpc-episode-download-info{color:var(--mpc-vidply-muted)}.mpc-episode-longdesc-toggle{align-items:center;background:0 0;border:0;color:var(--mpc-vidply-episode-accent);cursor:pointer;display:inline-flex;font:inherit;font-size:clamp(.8125rem, .78rem + .15vw, .9375rem);gap:.4rem;min-height:1.5rem;padding:0;text-align:start}.mpc-episode-longdesc-toggle:focus-visible{outline:3px solid var(--mpc-vidply-episode-accent);outline-offset:2px}.mpc-episode-longdesc{border-block-start:1px solid var(--mpc-vidply-border);margin:.75rem 0 0;overflow-wrap:anywhere;padding-block-start:0.75rem}.mpc-episode-longdesc[hidden]{display:none}.mpc-episode-longdesc>:first-child{margin-block-start:0}.mpc-episode-longdesc>:last-child{margin-block-end:0}.mpc-episode-layout-episodes .mpc-episode-list-section{flex:1 0 100%;min-width:0}.mpc-episode-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between;margin:0 0 .75rem}.mpc-episode-list-heading{font-size:clamp(1rem, .95rem + .4vw, 1.375rem);font-weight:600;margin:0}.mpc-episode-list-sort{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem .5rem}.mpc-episode-list-sort-label{color:var(--mpc-vidply-muted);font-size:.9rem;font-weight:500;margin:0;white-space:nowrap}.mpc-episode-list-sort-select{background:var(--mpc-vidply-episode-surface);border:1px solid var(--mpc-vidply-border);border-radius:.375rem;color:var(--mpc-vidply-text);cursor:pointer;font:inherit;line-height:1.35;max-width:100%;min-height:1.5rem;min-width:9.5rem;padding:.3rem .45rem}.mpc-episode-list-sort-select:focus-visible{outline:3px solid var(--mpc-vidply-episode-accent);outline-offset:2px}.mpc-episode-list{display:flex;flex-direction:column;gap:1rem;list-style:none;margin:0;padding:0}.mpc-episode-item{align-items:flex-start;border:1px solid var(--mpc-vidply-border);border-radius:var(--mpc-vidply-radius);cursor:pointer;display:flex;flex-wrap:wrap;gap:var(--mpc-vidply-episode-gap);isolation:isolate;padding:1rem;position:relative;transition:background var(--mpc-vidply-transition),box-shadow var(--mpc-vidply-transition);--mpc-vidply-episode-cover:6rem;--mpc-vidply-episode-gap:1rem;--mpc-vidply-episode-play-size:3rem}.mpc-episode-item .mpc-episode-play::after{content:"";inset:0;position:absolute;z-index:1}.mpc-episode-item .mpc-episode-download,.mpc-episode-item .mpc-episode-longdesc,.mpc-episode-item .mpc-episode-longdesc-toggle{position:relative;z-index:2}.mpc-episode-item .mpc-episode-longdesc{cursor:auto}.mpc-episode-item:focus-within,.mpc-episode-item:hover{background:var(--mpc-vidply-episode-surface);box-shadow:rgb(0 0 0 / 20%) 0 2px 8px -2px}.mpc-episode-item .mpc-episode-play:hover{transform:none}.mpc-episode-item[aria-current=true]{background:var(--mpc-vidply-episode-surface);border-color:var(--mpc-vidply-episode-accent)}@media (prefers-reduced-motion:reduce){.mpc-episode-item{transition:none}}.mpc-episode-item .mpc-episode-cover{flex:0 0 var(--mpc-vidply-episode-cover)}.mpc-episode-item .mpc-episode-header{flex:1 1 16rem;gap:1rem;min-width:0}.mpc-episode-item .mpc-episode-play-icon{border-width:.4rem 0 .4rem .65rem;margin-left:.15rem}.mpc-episode-item .mpc-episode-play[data-state=playing] .mpc-episode-play-icon{border-width:0 0 0 .6rem;height:.8rem;margin-left:0}.mpc-episode-item .mpc-episode-title{font-size:clamp(1rem, .95rem + .3vw, 1.25rem)}.mpc-episode-pager{display:block;margin-block-start:1rem}.mpc-episode-pager-list{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem .4rem;justify-content:center;list-style:none;margin:0;padding:0}.mpc-episode-pager-item--status{flex:0 0 auto;padding:0 .4rem}.mpc-episode-pager-status{color:var(--mpc-vidply-muted);font-size:.9rem;line-height:1.3;margin:0;white-space:nowrap}.mpc-episode-pager-button{background:0 0;border:1px solid var(--mpc-vidply-border);border-radius:.35rem;color:var(--mpc-vidply-text);cursor:pointer;font:inherit;font-size:.9rem;line-height:1.2;min-height:2.2rem;min-width:2.2rem;padding:.25rem .5rem}.mpc-episode-pager-button:hover:not(:disabled){background:var(--mpc-vidply-episode-surface)}.mpc-episode-pager-button:disabled{cursor:not-allowed;opacity:.5}.mpc-episode-pager-button.is-current:disabled{border-color:var(--mpc-vidply-episode-accent);cursor:default;font-weight:600;opacity:1}.mpc-episode-pager-button:focus-visible{outline:3px solid var(--mpc-vidply-episode-accent);outline-offset:2px}