/* Scoped to the episode's player controls, not series headers or profiles. */
.episode-actions { display: inline-grid; grid-template-columns: auto auto auto; align-items: stretch; gap: 8px; max-width: 100%; margin: 18px 0 22px; padding: 7px; border: 1px solid rgba(151,165,195,.16); border-radius: 16px; background: linear-gradient(135deg,rgba(32,39,54,.8),rgba(20,25,36,.7)); box-shadow: 0 7px 22px rgba(0,0,0,.1); box-sizing: border-box; }
.episode-actions--two { grid-template-columns: auto auto; }
.episode-actions .episode-actions__form { display: flex; min-width: 0; margin: 0; }
.episode-actions .episode-action { display: flex; align-items: center; justify-content: center; gap: 9px; width: 100%; min-height: 44px; margin: 0; padding: 10px 15px; border: 1px solid rgba(151,165,195,.22); border-radius: 10px; background: rgba(255,255,255,.025); color: #dbe4f0; font: inherit; font-size: 12px; font-weight: 600; line-height: 1.3; text-transform: none; text-decoration: none; cursor: pointer; box-sizing: border-box; transition: background-color .18s, border-color .18s, color .18s; }
.episode-actions .episode-action svg { width: 18px; height: 18px; flex: 0 0 18px; color: #99adc5; }
.episode-actions .episode-action--favorite svg { color: #d8c28a; }
.episode-actions .episode-action--watchlist svg { color: #a8b5ec; }
.episode-actions .episode-action--watched { border-color: rgba(121,211,201,.4); color: #b1eee6; background: rgba(121,211,201,.09); }
.episode-actions .episode-action--watched svg { color: #79d3c9; }
.episode-actions .episode-action--favorite.is-selected { color: #f2d887; border-color: rgba(242,216,135,.45); background: rgba(242,216,135,.08); }
.episode-actions .episode-action--watchlist.is-selected { color: #b7c5ff; border-color: rgba(169,185,255,.45); background: rgba(169,185,255,.09); }
.episode-actions .episode-action--watched.is-selected { color: #b9f1d4; border-color: rgba(111,207,159,.6); background: rgba(111,207,159,.15); }
.episode-actions .is-selected svg { color: currentColor; fill: currentColor; fill-opacity: .14; }
.episode-actions .episode-action__mobile { display: none; }
.episode-actions .episode-action:focus-visible { outline: 2px solid #a6ebe3; outline-offset: 3px; }
.episode-actions .member-watch-status { grid-column: 1 / -1; max-width: 580px; padding: 3px 8px; font-size: 11px; line-height: 1.5; color: #b3c5d8; overflow-wrap: anywhere; }
.episode-actions .member-watch-status:empty { display: none; }
@media (hover:hover) and (pointer:fine) {
 .episode-actions .episode-action:hover { background: rgba(121,211,201,.1); border-color: rgba(121,211,201,.55); color: #c0efe8; }
}
@media (max-width:600px) {
 .episode-actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); width: 100%; max-width: 440px; gap: 8px; margin: 16px 0 20px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
 .episode-actions--two { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .episode-actions .episode-action { flex-direction: column; gap: 7px; min-height: 64px; padding: 9px 6px; font-size: 11.5px; border-radius: 12px; background: linear-gradient(155deg,#202838,#191f2d); box-shadow: inset 0 1px 0 rgba(255,255,255,.035),0 3px 9px rgba(0,0,0,.1); -webkit-tap-highlight-color: transparent; }
 .episode-actions .episode-action svg { width: 19px; height: 19px; flex-basis: 19px; }
 .episode-actions .episode-action__desktop { display: none; }
 .episode-actions .episode-action__mobile { display: block; white-space: nowrap; }
 .episode-actions .episode-action--watched { background: linear-gradient(145deg,#24413f,#1a302f); }
 .episode-actions .episode-action--favorite.is-selected { background: linear-gradient(145deg,#3a3325,#29271f); }
 .episode-actions .episode-action--watchlist.is-selected { background: linear-gradient(145deg,#2e334d,#23293b); }
 .episode-actions .episode-action--watched.is-selected { background: linear-gradient(145deg,#2b4d3d,#213b30); }
 .episode-actions .episode-action:active { opacity: .8; }
}
@media (prefers-reduced-motion:reduce) { .episode-actions .episode-action { transition: none; } }

/* Library actions share the provider row, above the player. */
.episode-source-bar { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 10px 14px; margin: 16px 0 14px; }
.episode-source-bar .source-tabs { display: flex; flex-wrap: nowrap; align-items: center; gap: 8px; min-width: 0; margin: 0; padding: 2px 0; overflow-x: auto; scrollbar-width: thin; scrollbar-color: #3c485b transparent; }
.episode-source-bar .source-choice { flex: 0 0 auto; min-height: 44px; white-space: nowrap; }
.episode-source-bar .episode-actions { justify-self: end; margin: 0; }
.episode-source-bar > .member-watch-status { grid-column: 1 / -1; min-width: 0; color: #b3c5d8; font-size: 11px; line-height: 1.5; overflow-wrap: anywhere; }
.episode-source-bar > .member-watch-status:empty,
#member-watch-record[hidden] { display: none; }
@media (max-width:600px) {
 .episode-source-bar { gap: 8px 10px; margin: 12px 0; }
 .episode-source-bar .episode-actions { display: grid; grid-template-columns: repeat(2,44px); width: auto; max-width: none; gap: 6px; }
 .episode-source-bar .episode-action { min-height: 44px; height: 44px; width: 44px; flex-direction: row; padding: 0; gap: 0; border-radius: 11px; }
 .episode-source-bar .episode-action svg { width: 19px; height: 19px; }
 .episode-source-bar .episode-action__desktop,
 .episode-source-bar .episode-action__mobile { display: none; }
}
