/* XemPhim v2.0.3 — responsive playback branding, compact source tabs, shared poster frame.
 * Loaded after semantic component/catalog/detail/playback styles. Presentation only:
 * source/episode selection and player logic remain owned by existing JavaScript.
 */

/* 01 — Reduce theme-owned player logo; never alter an embedded video/iframe watermark. */
@media (min-width: 640px) and (max-width: 1023px) {
  .apx-player-shell .apx-player-branding { width:min(var(--apx-brand-width,120px),100px,26%)!important; max-width:100px!important; }
}
@media (max-width: 639px) {
  .apx-player-shell .apx-player-branding,
  .apx-player-shell:fullscreen .apx-player-branding,
  .apx-player-shell:-webkit-full-screen .apx-player-branding {
    width:min(var(--apx-brand-width,120px),64px,22%)!important;
    max-width:64px!important;
    max-height:15%!important;
    height:auto!important;
  }
  .apx-player-shell .apx-player-branding--top-left { top:min(var(--apx-brand-offset,14px),8px)!important; left:min(var(--apx-brand-offset,14px),8px)!important; }
  .apx-player-shell .apx-player-branding--top-right { top:min(var(--apx-brand-offset,14px),8px)!important; right:min(var(--apx-brand-offset,14px),8px)!important; }
  .apx-player-shell .apx-player-branding--bottom-left { bottom:min(var(--apx-brand-offset,14px),8px)!important; left:min(var(--apx-brand-offset,14px),8px)!important; }
  .apx-player-shell .apx-player-branding--bottom-right { bottom:min(var(--apx-brand-offset,14px),8px)!important; right:min(var(--apx-brand-offset,14px),8px)!important; }
}
@media (max-width: 360px), (orientation:landscape) and (max-height:500px) and (pointer:coarse) {
  .apx-player-shell .apx-player-branding,
  .apx-player-shell:fullscreen .apx-player-branding,
  .apx-player-shell:-webkit-full-screen .apx-player-branding {
    width:min(var(--apx-brand-width,120px),54px,18%)!important;
    max-width:54px!important;
  }
}

/* 02 — One scrolling row per source/translation group on phones. Existing data
 * attributes, tab selection and server-preservation logic are unchanged. */
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-source-block.apx-flat-step--source,
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-translation-block.apx-flat-step--translation {
  min-width:0!important;
}
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--source .apx-flat-tab,
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--translation .apx-flat-subtab {
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--source .apx-flat-tab.is-active,
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--translation .apx-flat-subtab.is-active {
  border-color:rgba(245,200,75,.68)!important;
  background:linear-gradient(145deg,rgba(245,200,75,.17),rgba(23,31,40,.96))!important;
  color:#f8d66b!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 8px 22px -18px rgba(245,200,75,.63)!important;
}
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-tab.is-active .apx-flat-tab__icon,
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-subtab.is-active .apx-flat-subtab__icon {
  color:#f8d66b!important;
  border-color:rgba(245,200,75,.24)!important;
  background:rgba(245,200,75,.11)!important;
}
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-tab.is-active .apx-flat-tab__check,
.apx-source-picker[data-apx-flat-source-picker] .apx-flat-subtab.is-active .apx-flat-subtab__check {
  background:#ffd15d!important;
  color:#121820!important;
}
@media (max-width: 767px) {
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-source-block.apx-flat-step--source {
    padding:11px 10px 12px!important;
    margin-bottom:11px!important;
    border-radius:14px!important;
  }
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-source-block .apx-flat-source-nav,
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--translation .apx-flat-translation-nav {
    display:flex!important;
    flex-flow:row nowrap!important;
    justify-content:flex-start!important;
    align-items:stretch!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    padding:2px 1px 5px!important;
    margin:0!important;
    touch-action:pan-x pan-y;
  }
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-source-nav::-webkit-scrollbar,
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-translation-nav::-webkit-scrollbar { display:none; }
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--source .apx-flat-tab,
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--translation .apx-flat-subtab {
    flex:0 0 auto!important;
    width:auto!important;
    max-width:min(82vw,260px)!important;
    min-height:46px!important;
    padding:6px 10px!important;
    gap:7px!important;
    border-radius:999px!important;
    scroll-snap-align:start;
    white-space:nowrap!important;
    font-size:12px!important;
  }
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--source .apx-flat-tab__icon,
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--translation .apx-flat-subtab__icon {
    width:28px!important;height:28px!important;flex:0 0 28px!important;
    border-radius:999px!important;
  }
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-tab__label,
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-subtab__label {
    flex:0 1 auto!important;max-width:160px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  }
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-tab__check,
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-subtab__check {
    flex:0 0 18px!important;width:18px!important;height:18px!important;
  }
  .apx-source-picker[data-apx-flat-source-picker] .apx-source-context {
    padding:12px 10px 13px!important;border-radius:15px!important;
  }
  .apx-source-picker[data-apx-flat-source-picker] .apx-source-context__identity {
    margin:0 0 10px!important;max-width:100%!important;
  }
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-step--translation {
    gap:7px!important;margin-bottom:12px!important;
  }
}

/* 03 — Shared premium poster framing for catalog, rank, sidebar and recommendations.
 * Deliberately EXCLUDE the Movie Showcase Slider: catalog.css owns its original
 * absolute-positioned portrait poster and responsive dual-artwork composition.
 * Do not override the slider with generic poster framing or hover rules. */
:root {
  --apx-poster-frame-line:rgba(184,199,219,.31);
  --apx-poster-frame-inner:rgba(245,249,255,.15);
  --apx-poster-frame-shadow:0 16px 28px -18px rgba(0,0,0,.87),0 5px 12px -7px rgba(0,0,0,.62);
  --apx-poster-frame-hover:0 23px 40px -22px rgba(0,0,0,.97),0 9px 21px -10px rgba(0,0,0,.69),0 0 0 1px rgba(245,200,75,.13);
}
.apx-catalog-card__poster,
.apx-movie-card .apx-movie-card__poster,
.apx-movie-card--rank .apx-movie-card__poster,
.apx-rank-card__poster,
.apx-sidebar-movies__poster,
.topmovie-thumb {
  position:relative!important;
  border:1px solid var(--apx-poster-frame-line)!important;
  border-radius:15px!important;
  background:#111925!important;
  box-shadow:var(--apx-poster-frame-shadow)!important;
  transition:border-color .22s ease,box-shadow .25s ease,transform .25s ease!important;
  transform:translateZ(0);
}
.apx-rank-card__poster {border-radius:14px 14px 0 0!important;}
.apx-sidebar-movies__poster,.topmovie-thumb {border-radius:11px!important;}
.apx-catalog-card__poster::before,
.apx-movie-card .apx-movie-card__poster::before,
.apx-sidebar-movies__poster::before,
.topmovie-thumb::before {
  content:""!important;
  position:absolute!important;
  z-index:35!important;
  inset:0!important;
  border-radius:inherit!important;
  box-shadow:inset 0 0 0 1px var(--apx-poster-frame-inner),inset 0 1px rgba(255,255,255,.09)!important;
  pointer-events:none!important;
}
.apx-movie-card--rank .apx-movie-card__poster::before {z-index:40!important;}
.apx-catalog-card__badges {inset:8px 8px auto!important;gap:6px!important;}
.apx-catalog-card__status {left:8px!important;bottom:8px!important;max-width:calc(100% - 16px)!important;}
.apx-movie-card .apx-poster-meta-bar {left:8px!important;bottom:8px!important;max-width:calc(100% - 16px)!important;}
.apx-catalog-card__badge,
.apx-sidebar-movies__meta span,
.apx-movie-card__poster .apiphim-badge {box-shadow:0 3px 10px -7px rgba(0,0,0,.9),inset 0 1px rgba(255,255,255,.08)!important;}
@media (hover:hover) and (pointer:fine) {
  .apx-catalog-card:hover .apx-catalog-card__poster,
  .apx-catalog-card:focus-visible .apx-catalog-card__poster,
  .apx-movie-card:hover .apx-movie-card__poster,
  .apx-movie-card:focus-visible .apx-movie-card__poster,
  .apx-rank-card:hover .apx-rank-card__poster,
  .apx-rank-card:focus-within .apx-rank-card__poster,
  .apx-sidebar-movies__item>a:hover .apx-sidebar-movies__poster,
  .apx-sidebar-movies__item>a:focus-visible .apx-sidebar-movies__poster,
  .topmovie-item:hover .topmovie-thumb,
  .topmovie-item:focus-within .topmovie-thumb {
    border-color:rgba(245,200,75,.58)!important;
    box-shadow:var(--apx-poster-frame-hover)!important;
    transform:translateY(-3px)!important;
  }
}
@media (max-width:767px) {
  .apx-catalog-card__poster,.apx-movie-card .apx-movie-card__poster,
  .apx-rank-card__poster {border-radius:13px!important;}
  .apx-sidebar-movies__poster,.topmovie-thumb {border-radius:10px!important;}
  .apx-catalog-card__badges {inset:7px 7px auto!important;}
  .apx-catalog-card__status {left:7px!important;bottom:7px!important;max-width:calc(100% - 14px)!important;}
  .apx-movie-card .apx-poster-meta-bar {left:7px!important;bottom:7px!important;max-width:calc(100% - 14px)!important;}
}
@media (prefers-reduced-motion:reduce) {
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-tab,
  .apx-source-picker[data-apx-flat-source-picker] .apx-flat-subtab,
  .apx-catalog-card__poster,.apx-movie-card .apx-movie-card__poster,
  .apx-rank-card__poster,.apx-sidebar-movies__poster,.topmovie-thumb {
    transition:none!important;animation:none!important;
  }
  .apx-catalog-card:hover .apx-catalog-card__poster,
  .apx-movie-card:hover .apx-movie-card__poster,
  .apx-sidebar-movies__item>a:hover .apx-sidebar-movies__poster,
  .topmovie-item:hover .topmovie-thumb {transform:none!important;}
}
