
.vodHero{padding:28px 0 6px}
.vodHero__inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:24px;align-items:stretch}
.vodHero__card{min-height:360px;border-radius:30px;border:1px solid rgba(255,255,255,.08);background:radial-gradient(circle at 20% 20%, rgba(30,115,168,.38), transparent 42%),linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));box-shadow:0 30px 70px rgba(0,0,0,.24);overflow:hidden;position:relative}
.vodHero__art{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(1.02)}
.vodHero__art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,9,16,.08),rgba(7,9,16,.72))}
.vodHero__metaBox{position:absolute;left:20px;right:20px;bottom:20px;z-index:1;display:grid;gap:8px}
.vodSearchWrap{position:relative}
.vodSearch{width:100%;height:60px;border-radius:22px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:#fff;padding:0 18px;font-size:16px;outline:none;box-shadow:0 16px 40px rgba(0,0,0,.12)}
.vodSearch:focus{border-color:rgba(125,163,255,.48);box-shadow:0 0 0 4px rgba(125,163,255,.12), 0 16px 40px rgba(0,0,0,.12)}
.vodSearchResults{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 10px);padding:12px;border-radius:24px;border:1px solid rgba(255,255,255,.09);background:rgba(10,12,18,.96);backdrop-filter:blur(18px);display:grid;gap:10px;box-shadow:0 30px 70px rgba(0,0,0,.28)}
.vodSearchItem{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 12px;border-radius:18px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03);text-decoration:none;color:#fff}
.vodSearchItem:hover{background:rgba(255,255,255,.06);border-color:rgba(125,163,255,.24)}
.vodSearchPoster{width:72px;height:100px;border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));background-size:cover;background-position:center;display:block}
.vodNotice{margin-top:12px;color:rgba(255,255,255,.64);font-size:14px}
.vodRail{display:grid;gap:14px;margin-bottom:28px}
.vodRail__head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}
.vodRail__meta{font-size:14px;color:rgba(255,255,255,.65)}
.vodScroller{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(180px, 220px);gap:16px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}
.vodCard{display:grid;gap:10px;text-decoration:none;color:#fff}
.vodCard__poster{aspect-ratio:2/3;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);background-size:cover;background-position:center;box-shadow:0 20px 40px rgba(0,0,0,.2);position:relative;overflow:hidden}
.vodCard__poster::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, transparent 30%, rgba(5,6,12,.25) 70%, rgba(5,6,12,.62) 100%)}
.vodCard__badge{position:absolute;left:12px;top:12px;z-index:1;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;background:rgba(5,6,12,.55);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}
.vodCard__progress{position:absolute;left:12px;right:12px;bottom:12px;height:6px;border-radius:999px;background:rgba(255,255,255,.16);overflow:hidden;z-index:1}
.vodCard__progress span{display:block;height:100%;background:linear-gradient(90deg,#7da3ff,#8f6afc);border-radius:999px}
.vodCard__title{font-weight:800;line-height:1.22;font-size:15px}
.vodCard__sub{font-size:13px;color:rgba(255,255,255,.68);line-height:1.35;min-height:34px}
.vodMetaPills{display:flex;gap:8px;flex-wrap:wrap}
.vodMetaPill{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);font-size:12px;color:#fff}
.vodWatchControls{display:none;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.vodWatchControls.is-visible{display:flex}
.vodSelect,.vodInput{height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;padding:0 14px;min-width:120px}
.vodLabel{display:flex;flex-direction:column;gap:6px;font-size:12px;color:rgba(255,255,255,.66)}
.vodMode .player__frame{background:linear-gradient(180deg,#05060a,#101420)}
.vodMode #video{display:none !important}
.vodIframeWrap{width:100%;height:100%;position:relative}
.vodIframeWrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vodRelatedGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}
@media (max-width:960px){.vodHero__inner{grid-template-columns:1fr}.vodHero__card{min-height:280px}}
@media (max-width:700px){.vodScroller{grid-auto-columns:minmax(148px, 170px)}.vodSearchItem{grid-template-columns:56px minmax(0,1fr)}.vodSearchPoster{width:56px;height:78px}.vodHero__card{min-height:220px}}


/* folded UI fixes */
.vodWatchControls{
  display:none;
  margin-top:18px;
  width:100%;
  grid-template-columns:minmax(150px,220px) minmax(220px,1fr) auto;
  align-items:end;
  gap:16px;
}
.vodWatchControls.is-visible{display:grid}
.vodWatchControls .btn{height:60px;padding-inline:28px;border-radius:22px;align-self:end}
.vodLabel{display:grid;gap:8px;font-size:13px;color:rgba(255,255,255,.72);min-width:0}
.vodSelect,.vodInput{
  width:100%;
  min-width:0;
  height:60px;
  border-radius:22px;
  font-size:16px;
  line-height:1.2;
  appearance:auto;
}
#vodEpisodeSelect{max-width:none}
#vodEpisodeWrap{min-width:0}
.vodRelatedSection{
  margin-top:28px;
  padding-top:8px;
  border-top:1px solid rgba(255,255,255,.06);
}
.vodRelatedGrid{margin-top:8px}
@media (max-width:900px){
  .vodWatchControls{grid-template-columns:1fr 1fr;}
  .vodWatchControls .btn{grid-column:1 / -1}
}
@media (max-width:640px){
  .vodWatchControls{grid-template-columns:1fr;gap:12px}
  .vodWatchControls .btn{width:100%}
}
