.card-play {
  position: absolute;
  z-index: 2;
  right: 8px;
  bottom: 8px;
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid #ffffff55;
  border-radius: 50%;
  color: #fff;
  background: #080808a8;
  font-size: 11px;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity .2s, transform .2s;
}

.card:hover .card-play,
.card:focus-visible .card-play { opacity: 1; transform: translateY(0); }

.trailer-card {
  position: relative;
  width: min(920px, 100%);
  padding: 0;
  border: 1px solid #343434;
  border-radius: 12px;
  background: #000;
  box-shadow: 0 24px 100px #000;
}

.trailer-card iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 12px; }
.trailer-card .modal-close { z-index: 1; top: 7px; right: 7px; border-radius: 50%; color: #fff; background: #000a; }

.account {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-left: 2px;
  padding: 8px 11px;
  border: 1px solid #333;
  border-radius: 999px;
  color: #e6e6e6;
  background: #151515;
  font-size: 12px;
  font-weight: 700;
}

.account span { color: #e50914; font-size: 10px; }
.account:hover { border-color: #686868; background: #222; }

.wordmark { display: inline-flex; align-items: center; gap: 8px; }
.wordmark img { display: block; width: 88px; height: auto; object-fit: contain; }
.wordmark.logo-only { width: 92px; height: 32px; padding: 0; }
.browse-page { padding: 18px 0 2px; }
.browse-page h2 { margin: 7px 0; font-size: 30px; letter-spacing: -.8px; }
.browse-page p { max-width: 540px; margin: 0; color: #aaa; line-height: 1.5; }
.filter-row { display: flex; gap: 8px; overflow-x: auto; margin-top: 18px; padding: 2px 0 4px; scrollbar-width: none; }
.filter-row::-webkit-scrollbar { display: none; }
.filter { flex: 0 0 auto; padding: 8px 13px; border: 1px solid #343434; border-radius: 999px; color: #c9c9c9; background: #151515; font-size: 12px; font-weight: 700; }
.filter:hover { border-color: #727272; color: #fff; }
.filter.active { border-color: #c91520; color: #fff; background: #70090f; }
.explore-all { padding: 4px 0; color: #a9a9a9; background: transparent; font-size: 12px; font-weight: 650; }
.explore-all:hover { color: #fff; text-decoration: underline; }
.explore-grid { margin-top: 18px; }
.all-catalog { margin-top: 16px; padding: 9px 12px; border: 1px solid #4b4b4b; border-radius: 7px; color: #f4f4f4; background: #181818; font-size: 13px; font-weight: 750; }
.all-catalog:hover { border-color: #c91520; background: #250a0c; }
.all-catalog b { margin-left: 7px; color: #e31a25; font-size: 17px; line-height: 10px; }
.load-more { display: block; min-width: 170px; margin: 28px auto 8px; padding: 12px 18px; border: 1px solid #555; border-radius: 7px; color: #fff; background: #191919; font-weight: 750; }
.load-more:hover { border-color: #c91520; background: #26090c; }
.catalog-loading { width: 170px; height: 42px; margin: 28px auto 8px; border-radius: 7px; }
.catalog-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 16px; }
.catalog-actions .all-catalog { margin-top: 0; }
.list-action { border: 1px solid #545454; }
.list-action.saved { border-color: #8f2028; color: #fff; background: #4d0c11; }
.list-action.saved:hover { border-color: #ef2632; background: #681016; }
.filter-trigger { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border: 1px solid #4b4b4b; border-radius: 7px; color: #f4f4f4; background: #181818; font-size: 13px; font-weight: 750; }
.filter-trigger:hover { border-color: #c91520; background: #250a0c; }
.filter-trigger svg { width: 17px; height: 17px; fill: none; stroke: #e21a26; stroke-linecap: round; stroke-width: 2; }
.filter-panel { position: relative; width: min(100%, 400px); padding: 30px; border: 1px solid #343434; border-radius: 12px; background: linear-gradient(150deg, #1b1b1b, #0d0d0d); box-shadow: 0 24px 100px #000; }
.filter-panel h2 { margin: 8px 0 18px; font-size: 27px; letter-spacing: -.8px; }
.filter-panel label { display: block; margin: 14px 0 0; color: #d4d4d4; font-size: 12px; font-weight: 700; }
.filter-panel select { display: block; width: 100%; margin-top: 7px; padding: 11px; border: 1px solid #3a3a3a; border-radius: 6px; outline: 0; color: #fff; background: #111; font: inherit; }
.filter-panel select:focus { border-color: #c91520; }
.filter-note { margin: 16px 0 0; color: #a6a6a6; font-size: 12px; line-height: 1.45; }
.filter-clear { display: block; width: 100%; margin-top: 13px; padding: 4px; color: #c7c7c7; background: transparent; font-size: 12px; text-decoration: underline; }
.media-info { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0 0 34px; }
.info-block { min-width: 0; padding: 17px; border: 1px solid #242424; border-radius: 9px; background: #101010; }
.info-block .brand { margin-bottom: 12px; }
.fact-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 18px; }
.fact-grid small, .cast-card small { display: block; color: #929292; font-size: 11px; }
.fact-grid b { display: block; margin-top: 3px; overflow: hidden; color: #eee; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.tag-row { display: flex; flex-wrap: wrap; gap: 7px; }
.tag-row span { padding: 6px 9px; border: 1px solid #343434; border-radius: 999px; color: #cfcfcf; background: #181818; font-size: 11px; }
.creator-list { margin: 0; color: #d0d0d0; font-size: 13px; line-height: 1.6; }
.cast-block { grid-column: 1 / -1; }
.cast-row { display: grid; grid-auto-flow: column; grid-auto-columns: 100px; gap: 10px; overflow-x: auto; overscroll-behavior-x: contain; padding: 2px 2px 10px; scrollbar-color: #555 transparent; scrollbar-width: thin; }
.cast-row::-webkit-scrollbar { height: 5px; }
.cast-row::-webkit-scrollbar-track { background: transparent; }
.cast-row::-webkit-scrollbar-thumb { border-radius: 999px; background: #555; }
.cast-row::-webkit-scrollbar-thumb:hover { background: #777; }
.cast-card { min-width: 0; padding: 0; color: inherit; text-align: left; background: transparent; }
.cast-card img { display: block; width: 100px; height: 130px; margin-bottom: 7px; border: 2px solid transparent; border-radius: 6px; object-fit: cover; background: #242424; }
.cast-card b { display: block; overflow: hidden; color: #eee; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.cast-card:hover img, .cast-card:focus-visible img { border-color: #d61a25; filter: brightness(1.1); }
.person-hero { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 30px; align-items: start; margin: 6px 0 38px; padding: 25px; border: 1px solid #252525; border-radius: 12px; background: linear-gradient(130deg, #151515, #090909 68%); }
.person-photo { display: block; width: 230px; aspect-ratio: 2 / 3; border-radius: 8px; object-fit: cover; background: #1d1d1d; box-shadow: 0 16px 36px #0009; }
.person-main h1 { margin: 8px 0 10px; font-size: clamp(34px, 5vw, 53px); letter-spacing: -1.8px; }
.person-biography { max-width: 810px; margin: 17px 0 22px; color: #d0d0d0; line-height: 1.62; }
.person-links { display: flex; flex-wrap: wrap; gap: 8px; }
.person-links a { padding: 7px 10px; border: 1px solid #414141; border-radius: 999px; color: #e2e2e2; font-size: 12px; font-weight: 700; text-decoration: none; }
.person-links a:hover { border-color: #d31b25; color: #fff; background: #2b0b0e; }
.person-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px 18px; padding-top: 18px; border-top: 1px solid #303030; }
.person-facts small { display: block; color: #929292; font-size: 11px; }
.person-facts b { display: block; margin-top: 3px; color: #eee; font-size: 13px; line-height: 1.35; }
.person-filmography { margin: 0 0 34px; }
.person-filmography > .rail-title { margin-bottom: 0; }
.person-filmography > .rail-title h2 { margin: 5px 0 0; font-size: 27px; }
.person-rail { margin-top: 25px; }
.person-loading { min-height: 330px; align-items: center; }
.person-loading .skeleton-line { margin: 12px 0; }
.person-loading p { color: #aaa; }
.resume-action { font-size: 12px; }
#episodes-list .resume-action { display: block; margin: -3px 8px 9px auto; padding: 8px 11px; }
.continue-rail { margin-top: 30px; }
.rail-heading { position: relative; padding-left: 10px; color: #f4f4f4; font-weight: 850; }
.rail-heading::before { position: absolute; top: .16em; bottom: .16em; left: 0; width: 3px; border-radius: 99px; background: #e31a25; content: ""; }
.continue-card { position: relative; padding-bottom: 7px; }
.continue-card .poster-wrap { border: 1px solid #5d1015; }
.continue-progress { display: block; height: 3px; overflow: hidden; margin: 7px 2px 0; border-radius: 99px; background: #343434; }
.continue-progress i { display: block; height: 100%; background: #d81924; }
.season-select { display: inline-flex; align-items: center; gap: 9px; margin: 2px 0 12px; color: #cfcfcf; font-size: 12px; font-weight: 750; }
.season-select select { min-width: 150px; padding: 9px 34px 9px 11px; border: 1px solid #414141; border-radius: 7px; outline: 0; color: #fff; background: #171717; font: inherit; }
.season-select select:focus { border-color: #c91520; }
.series-tracker { display: grid; grid-template-columns: 1fr auto; gap: 8px 14px; align-items: end; max-width: 620px; margin: 3px 0 16px; padding: 13px 14px; border: 1px solid #352125; border-radius: 9px; background: linear-gradient(105deg, #160b0d, #111); }
.series-tracker .brand { margin-bottom: 5px; }
.series-tracker b { display: block; color: #e7e7e7; font-size: 13px; }
.series-tracker > span { color: #e52833; font-size: 12px; font-weight: 850; }
.series-tracker > i { grid-column: 1 / -1; display: block; height: 4px; overflow: hidden; border-radius: 99px; background: #343434; }
.series-tracker > i em { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #a90812, #ec2631); }
.up-next { display: grid; grid-template-columns: 154px minmax(0, 1fr) auto; gap: 14px; align-items: center; width: min(620px, 100%); margin: 0 0 28px; padding: 8px; border: 1px solid #332124; border-radius: 10px; color: #fff; text-align: left; background: linear-gradient(105deg, #160a0d, #101010 62%); box-shadow: 0 12px 34px #0007; }
.up-next:hover { border-color: #8e2229; background: linear-gradient(105deg, #1c0b0f, #151515 62%); }
.up-next img { width: 154px; height: 87px; border-radius: 6px; object-fit: cover; background: #1c1c1c; }
.up-next span { min-width: 0; }
.up-next small, .up-next b, .up-next strong, .up-next em { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.up-next small { color: #eb3039; font-size: 9px; font-weight: 850; letter-spacing: 1.5px; }
.up-next b { margin-top: 5px; color: #d9d9d9; font-size: 12px; }
.up-next strong { margin-top: 3px; font-size: 15px; }
.up-next em { margin-top: 4px; color: #9d9d9d; font-size: 11px; font-style: normal; }
.up-next > i { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; color: #fff; background: #c81420; font-size: 12px; font-style: normal; }
.history-page { max-width: 820px; margin: 0 auto; }
.history-page > h2 { margin: 7px 0; font-size: clamp(28px, 4vw, 42px); letter-spacing: -1.1px; }
.history-page > p { max-width: 570px; margin: 0 0 24px; color: #aaa; font-size: 13px; line-height: 1.5; }
.history-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: -5px 0 16px; }
.history-toolbar > span { color: #858585; font-size: 11px; }
.history-filters { display: flex; gap: 7px; }
.history-filters button { padding: 7px 10px; border: 1px solid #353535; border-radius: 4px; color: #bdbdbd; background: #121212; font-size: 11px; font-weight: 750; }
.history-filters button:hover, .history-filters button.active { border-color: #d31b25; color: #fff; background: #310d10; }
.history-list { display: grid; gap: 9px; }
.history-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; overflow: hidden; border: 1px solid #292929; border-radius: 9px; background: #121212; }
.history-main { display: grid; grid-template-columns: 128px minmax(0, 1fr) auto; gap: 13px; align-items: center; min-width: 0; padding: 8px; color: #fff; text-align: left; background: transparent; }
.history-main:hover { background: #181818; }
.history-main img { width: 128px; height: 72px; border-radius: 5px; object-fit: cover; background: #202020; }
.history-main span { min-width: 0; }
.history-main b, .history-main small, .history-main em { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.history-main b { font-size: 14px; }
.history-main small { margin-top: 4px; color: #aaa; font-size: 11px; }
.history-main em { margin-top: 4px; color: #ec3c45; font-size: 11px; font-style: normal; }
.history-main > i { color: #999; font-size: 24px; font-style: normal; }
.history-remove { width: 44px; border-left: 1px solid #292929; color: #aaa; background: transparent; font-size: 23px; }
.history-remove:hover { color: #f04a52; background: #261013; }
.history-empty { padding: 22px; border: 1px dashed #383838; border-radius: 9px; color: #999; background: #111; }
.episode-main { display: flex; align-items: center; gap: 14px; min-width: 0; flex: 1; padding: 0; color: inherit; text-align: left; background: transparent; }
.episode.is-watched { border: 1px solid #432327; background: #161112; }
.episode.is-watched .episode-main b { color: #d2d2d2; }
.episode-toggle { flex: 0 0 auto; width: 32px; height: 32px; margin-left: 9px; border: 1px solid #4b4b4b; border-radius: 50%; color: #c8c8c8; background: #1b1b1b; font-size: 17px; line-height: 1; }
.episode-toggle:hover { border-color: #e2202c; color: #fff; }
.episode-toggle.done { border-color: #a8121b; color: #fff; background: #791017; }
.player-next { display: inline-flex; align-items: center; gap: 6px; margin-top: 6px; padding: 9px 12px; font-size: 12px; }
.player-next b { margin: 0; color: #ef2731; font-size: 16px; line-height: 10px; }
.player-stage { max-width: 1060px; margin: 0 auto; padding: 12px; border: 1px solid #2b2b2b; border-radius: 14px; background: linear-gradient(145deg, #171717, #080808 58%); box-shadow: 0 22px 70px #000a; }
.player-stage-bar { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 0 3px 10px; color: #a8a8a8; font-size: 11px; font-weight: 750; }
.player-stage-bar .brand { margin: 0; }
.player-frame { overflow: hidden; border: 1px solid #242424; border-radius: 9px; background: #000; box-shadow: 0 12px 34px #000b; }
.player-stage .player { border: 0; border-radius: 0; }
.now { max-width: 1060px; margin: 22px auto 0; padding: 0 4px 4px; }
.player-episodes { max-width: 1060px; margin: 28px auto 0; }
.player-episodes .rail-title { margin-bottom: 9px; }
.player-episodes-list { display: grid; gap: 8px; }
.player-episodes .episode { margin: 0; }
.player-episodes .episode.is-current { border: 1px solid #94131b; background: linear-gradient(100deg, #280c0f, #171010); box-shadow: inset 3px 0 #df1d29; }
.episode-current { flex: 0 0 auto; margin-right: 7px; padding: 5px 8px; border: 1px solid #872027; border-radius: 999px; color: #f04a52; background: #300d10; font-size: 10px; font-weight: 850; }
.player-episodes-loading { min-height: 88px; padding: 17px; border: 1px solid #2b2b2b; border-radius: 9px; background: #101010; }
.player-episodes-loading .brand { margin-bottom: 6px; }
.player-episodes-loading p, .episode-empty { margin: 0; color: #9d9d9d; font-size: 13px; }
.site-footer { position: relative; overflow: hidden; margin: 78px 0 0; padding: 50px 24px 44px; border-top: 1px solid #1e282d; color: #9eafb8; text-align: center; background: linear-gradient(180deg, #071016, #05090b); }
.media-info + .site-footer { clear: both; isolation: isolate; margin-top: 102px; }
.footer-wordmark { margin: 0 0 32px; color: #1a252b; font-size: clamp(76px, 16vw, 190px); font-weight: 950; letter-spacing: -0.09em; line-height: .78; user-select: none; }
.footer-inner { position: relative; max-width: 660px; margin: 0 auto; }
.footer-inner .brand { margin-bottom: 16px; color: #e21a26; }
.footer-inner p { max-width: 560px; margin: 0 auto; font-size: 14px; line-height: 1.6; }
.footer-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px 22px; margin: 20px 0; }
.footer-links button { padding: 2px 0; color: #f0f0f0; background: transparent; font-size: 12px; font-weight: 760; }
.footer-links button:hover { color: #e21a26; }
.footer-inner small { display: block; max-width: 560px; margin: 0 auto; color: #798a93; font-size: 12px; line-height: 1.65; }
.footer-inner a { color: #a7bac4; }
.footer-inner a:hover { color: #fff; }
.hero { display: block; min-height: 510px; padding: 0; overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.hero:after { display: none; }
.hero-kicker { position: absolute; z-index: 3; top: 28px; left: 50%; color: #d7dce3; font-size: 10px; font-weight: 850; letter-spacing: 2.2px; transform: translateX(-50%); }
.coverflow-carousel { position: absolute; z-index: 1; inset: 0; overflow: visible; isolation: isolate; }
.coverflow-carousel::before { position: absolute; z-index: -1; inset: 18% 10% 4%; background: radial-gradient(ellipse at center, #151515 0%, #08080899 38%, transparent 72%); content: ""; }
.coverflow-stage { position: absolute; inset: 0; --cover-drag: 0px; perspective: 1200px; transform-style: preserve-3d; touch-action: pan-y; cursor: grab; user-select: none; }
.coverflow-stage.is-dragging { cursor: grabbing; }
.coverflow-card { position: absolute; z-index: var(--cover-z); top: 47%; left: 50%; width: 232px; height: 348px; overflow: visible; padding: 0; border: 1px solid #d8e1f04d; border-radius: 9px; opacity: var(--cover-opacity); background: #0c0c0c; box-shadow: 0 18px 44px #000c; filter: brightness(var(--cover-brightness)); pointer-events: none; transform: translate3d(calc(-50% + var(--cover-x) + var(--cover-drag)), -50%, 0) rotateY(var(--cover-rotation)) scale(var(--cover-scale)); transform-style: preserve-3d; transition: transform 620ms cubic-bezier(.18,.9,.24,1), opacity 480ms ease, filter 480ms ease; will-change: transform, opacity, filter; }
.coverflow-card.is-visible { pointer-events: auto; }
.coverflow-stage.is-dragging .coverflow-card { transition: none; }
.coverflow-card img { display: block; width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
.coverflow-card::after { position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(90deg, #0008, transparent 50%, #0008); content: ""; pointer-events: none; }
.coverflow-card span { position: absolute; z-index: 1; right: 10px; bottom: 10px; left: 10px; overflow: hidden; opacity: 0; color: #fff; font-size: 11px; font-weight: 800; text-align: center; text-overflow: ellipsis; text-shadow: 0 2px 7px #000; transition: opacity 260ms ease; white-space: nowrap; }
.coverflow-card.is-active { border-color: #ffffff73; box-shadow: 0 30px 72px #000f, 0 0 30px #9e10151f; filter: brightness(1); }
.coverflow-card.is-active span { opacity: 1; }
.nav-icon { display: none; }
.search { position: relative; }
.search-suggestions { position: absolute; z-index: 80; top: calc(100% + 8px); right: 0; width: 330px; overflow: hidden; border: 1px solid #363636; border-radius: 10px; background: #121212fa; box-shadow: 0 18px 45px #000c; backdrop-filter: blur(14px); }
.search-suggestion { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 56px; padding: 7px; color: #eee; text-align: left; background: transparent; }
.search-suggestion:hover { background: #242424; }
.search-suggestion img { width: 30px; height: 42px; border-radius: 4px; object-fit: cover; background: #282828; }
.search-suggestion span { min-width: 0; }
.search-suggestion b, .search-suggestion small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.search-suggestion b { font-size: 12px; }
.search-suggestion small { margin-top: 3px; color: #a3a3a3; font-size: 10px; }
.search-all { display: block; width: 100%; padding: 11px; border-top: 1px solid #303030; color: #ee2832; text-align: left; background: #171717; font-size: 11px; font-weight: 800; }
.search-all:hover { background: #221114; }
.search-all b { float: right; font-size: 15px; line-height: 9px; }
.search-empty { margin: 0; padding: 13px; color: #aaa; font-size: 12px; }
.cards { grid-auto-columns: 166px; gap: 14px; }
.card img { width: 166px; height: 249px; }
.card-skeleton { width: 166px; height: 249px; }
.poster-wrap { border-radius: 8px; }

/* Desktop rails end cleanly at the content edge. The full catalog remains
   available through Explore all, while phones retain their horizontal swipe. */
@media (min-width: 651px) {
  .hero { min-height: 590px; }
  .cards {
    grid-auto-flow: row;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-auto-columns: auto;
    overflow: hidden;
    padding-right: 0;
  }
  .cards > :nth-child(n + 7) { display: none; }
  .card img,
  .card-skeleton { width: 100%; height: auto; aspect-ratio: 2 / 3; }
}

#featured + .rail,
#featured + #rails { margin-top: 54px; }

html, body { overflow-x: hidden; }

@media (max-width: 650px) {
  #app { padding-bottom: calc(82px + env(safe-area-inset-bottom)); }
  header { gap: 8px; }
  header > nav { position: fixed; z-index: 50; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); width: 100%; padding: 7px 8px calc(7px + env(safe-area-inset-bottom)); border-top: 1px solid #2a2a2a; background: #0b0b0bf5; box-shadow: 0 -10px 28px #0008; backdrop-filter: blur(16px); }
  header > nav .nav-link { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-height: 49px; padding: 3px 2px; color: #c9c9c9; font-size: 10px; font-weight: 760; line-height: 1; }
  header > nav .nav-link:active { color: #fff; }
  header > nav .nav-icon { display: block; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
  header > nav .nav-link:first-child .nav-icon { fill: currentColor; stroke: currentColor; }
  .search { flex: 1; width: auto; margin-left: 0; }
  .search input { font-size: 16px; }
  .search-suggestions { right: auto; left: 0; width: min(330px, calc(100vw - 28px)); }
  .cards { grid-auto-columns: 132px; gap: 11px; }
  .card img { width: 132px; height: 198px; }
  .card-skeleton { width: 132px; height: 198px; }
  .hero { min-height: 410px; padding: 0; }
  .hero-kicker { top: 20px; font-size: 9px; }
  .card-play { opacity: 1; transform: none; }
  .rail-heading { padding-left: 8px; }
  .rail-heading::before { width: 2px; }
  .account { width: 34px; height: 34px; justify-content: center; padding: 0; }
  .account b { display: none; }
  .media-info { grid-template-columns: 1fr; gap: 10px; margin-bottom: 26px; }
  .info-block { padding: 14px; }
  .cast-card img { width: 90px; height: 117px; }
  .cast-row { grid-auto-columns: 90px; }
  .person-hero { grid-template-columns: 116px minmax(0, 1fr); gap: 17px; padding: 16px; margin-bottom: 27px; }
  .person-photo { width: 116px; }
  .person-main h1 { font-size: 31px; letter-spacing: -1.1px; }
  .person-biography { margin: 14px 0 18px; font-size: 13px; }
  .person-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding-top: 15px; }
  .person-links a { padding: 6px 8px; font-size: 11px; }
  .person-filmography > .rail-title h2 { font-size: 23px; }
  #episodes-list .resume-action { margin-right: 4px; }
  .series-tracker { margin-bottom: 13px; padding: 11px; }
  .up-next { grid-template-columns: 112px minmax(0, 1fr) 30px; gap: 10px; margin-bottom: 22px; padding: 6px; }
  .up-next img { width: 112px; height: 63px; }
  .up-next strong { font-size: 13px; }
  .up-next > i { width: 30px; height: 30px; font-size: 10px; }
  .history-main { grid-template-columns: 104px minmax(0, 1fr) auto; gap: 9px; }
  .history-main img { width: 104px; height: 59px; }
  .history-main b { font-size: 13px; }
  .history-remove { width: 39px; }
  .history-toolbar { align-items: flex-start; flex-direction: column; }
  .episode-main { gap: 10px; }
  .episode-toggle { width: 30px; height: 30px; margin-left: 6px; }
  .player-stage { padding: 8px; border-radius: 11px; }
  .player-stage-bar { padding: 1px 2px 8px; font-size: 10px; }
  .player-frame { border-radius: 7px; }
  .now { margin-top: 17px; padding: 0 2px; }
  .site-footer { margin-top: 56px; padding: 42px 16px 31px; }
  .media-info + .site-footer { margin-top: 76px; }
  .footer-wordmark { margin-bottom: 27px; font-size: clamp(70px, 24vw, 130px); }
  .footer-inner p { font-size: 13px; }
  .footer-links { gap: 9px 16px; margin: 18px 0; }

  .coverflow-carousel::before { inset: 15% 0 2%; }
  .coverflow-card { top: 48%; width: 166px; height: 249px; }
  .coverflow-card span { right: 6px; bottom: 7px; left: 6px; font-size: 9px; }
}

@media (prefers-reduced-motion: reduce) {
  .coverflow-card { transition: none; }
}

@media (max-width: 650px) {
  header > nav { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  header > nav .nav-link { white-space: nowrap; }
  header > nav .nav-link[data-favourites] span { font-size: 0; }
  header > nav .nav-link[data-favourites] span:after { font-size: 10px; content: "Favs"; }
  .detail .actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .detail .actions .primary { grid-column: 1 / -1; width: 100%; }
  .detail .actions .secondary { display: flex; min-width: 0; min-height: 44px; align-items: center; justify-content: center; padding: 10px 8px; text-align: center; }
}
