.ranking-gallery { text-align: left; min-width: 0; }
.ranking-gallery-kicker { margin: 0 0 14px; color: var(--muted); letter-spacing: .08em; }
.ranking-gallery-tabs { display: grid; grid-template-columns: repeat(8, max-content); gap: 0 clamp(8px,1.6vw,24px); justify-content: start; max-width: 100%; padding: 0 2px; background: rgba(8,20,35,.86); border-bottom: 1px solid rgba(142,178,219,.22); }
.ranking-gallery-tab { min-width: 0; min-height: 44px; padding: 9px 0 7px; border: 0; border-bottom: 2px solid transparent; background: none; color: var(--muted); font: inherit; font-size: 14px; text-align: left; cursor: pointer; }
.ranking-gallery-tab[aria-selected="true"] { color: #e6faff; border-bottom-color: #67d9ff; }
.ranking-gallery-tab:focus-visible, .ranking-gallery-more:focus-visible, .ranking-gallery-poster:focus-visible, .ranking-gallery .ranking-card-body:focus-visible { outline: 2px solid #86e7ff; outline-offset: 3px; }
.ranking-gallery .ranking-sections { display: block; margin-top: 14px; }
.ranking-gallery .ranking-section { padding: 0; border: 0; border-radius: 0; background: none; }
.ranking-gallery .ranking-section[hidden], .ranking-gallery-card[hidden], .ranking-gallery-more[hidden] { display: none; }
.ranking-gallery .ranking-list { margin-top: 0; }
.ranking-gallery .ranking-gallery-grid { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 15px 12px; }
.ranking-gallery .ranking-gallery-card { display: block; min-width: 0; padding: 0; border: 1px solid rgba(142,178,219,.13); border-radius: 10px; overflow: hidden; background: rgba(18,36,60,.6); text-decoration: none; }
.ranking-gallery-poster { position: relative; display: grid; place-items: center; width: 100%; aspect-ratio: 2 / 3; overflow: hidden; background: linear-gradient(145deg, #19334c, #0c1d30); color: #a8bccb; font-size: 12px; }
.ranking-gallery a.ranking-gallery-poster { text-decoration:none; }
.ranking-gallery .ranking-card-body { color:inherit;text-decoration:none; }
.ranking-gallery .ranking-card-body:hover { text-decoration:underline; }
.ranking-gallery-poster img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; opacity: 0; }
.ranking-gallery-poster img.is-loaded { opacity: 1; }
.ranking-gallery-poster [hidden] { display: none; }
.ranking-gallery-episodes { position: absolute; right: 6px; bottom: 6px; z-index: 1; padding: 3px 6px; border-radius: 4px; background: rgba(5,15,27,.82); color: #fff; font-size: 11px; line-height: 1.2; }
.ranking-gallery .ranking-card-body { display: block; padding: 9px 8px 10px; }
.ranking-gallery .ranking-card-body strong { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 13px; line-height: 1.5; }
.ranking-gallery-actions { display: flex; justify-content: flex-end; margin-top: 18px; }
.ranking-gallery-more { min-height: 44px; }
@media (max-width: 767px) {
  .ranking-gallery .ranking-gallery-grid { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px 8px; }
  .ranking-gallery-card[data-mobile-hidden] { display: none; }
  .ranking-gallery .ranking-card-body { padding: 7px 5px 8px; }
  .ranking-gallery .ranking-card-body strong { font-size: 12px; }
  .ranking-gallery-tabs { grid-template-columns: repeat(4, minmax(0,1fr)); gap: 0 4px; padding: 0; }
  .ranking-gallery-tab { padding: 8px 2px 6px; font-size: 12px; line-height: 1.25; overflow-wrap: anywhere; text-align: center; }
}
@media (prefers-reduced-motion: reduce) { .ranking-gallery-card { transition: none !important; } }
.film-updates[hidden] { display:none; }
.film-updates-tabs { display:flex; gap:clamp(8px,2vw,22px); overflow-x:auto; border-bottom:1px solid rgba(142,178,219,.22); scrollbar-width:thin; }
.film-updates-tabs button { flex:0 0 auto; min-height:44px; padding:9px 2px 7px; border:0; border-bottom:2px solid transparent; background:none; color:var(--muted); font:inherit; font-size:14px; cursor:pointer; }
.film-updates-tabs button[aria-pressed="true"] { color:#e6faff; border-bottom-color:#67d9ff; }
.film-updates-tabs button:focus-visible,.film-update-card button:focus-visible { outline:2px solid #86e7ff; outline-offset:3px; }
.film-updates .ranking-gallery-grid { margin-top:14px; }
.film-update-card button { border:0; text-align:left; cursor:pointer; font:inherit; }
.film-update-card .ranking-gallery-poster { padding:0; }
.film-update-card .ranking-card-body { width:100%; background:none; }
.film-updates [data-film-updates-retry] { margin-top:12px; }
.film-update-card .ranking-gallery-episodes { left:6px; right:auto; }
.film-updates .film-updates-more { display:block; margin:18px auto 0; min-height:44px; }
.film-updates .film-updates-more[hidden] { display:none; }
