/* ==========================================================================
   PrimePlay theme  —  "velvet cinema"
   Purani theme ke upar load hoti hai. Saari nayi classes "pp-" se start hoti hain
   taaki watch/login/sports jaise purane pages kharab na hon.
   ========================================================================== */

:root{
  --pp-bg:#0e0a13;
  --pp-surface:#18121f;
  --pp-raised:#221a2c;
  --pp-line:rgba(255,255,255,.08);
  --pp-line-2:rgba(255,255,255,.14);
  --pp-text:#f4eff8;
  --pp-muted:#a99fb6;
  --pp-red:#e8173f;
  --pp-red-hi:#ff3a5e;
  --pp-gold:#f5b83d;
  --pp-gold-hi:#ffd27a;
  --pp-free:#34d399;

  --pp-font-display:"Bricolage Grotesque", "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
  --pp-font:"Figtree", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

  --pp-gutter:clamp(14px, 4vw, 56px);
  --pp-radius:10px;
  --pp-radius-lg:18px;
  --pp-header-h:64px;
  --pp-tabbar-h:0px;

  /* rail card widths — screen ke hisab se khud adjust */
  --pp-poster-w:clamp(118px, 29vw, 178px);
  --pp-wide-w:clamp(220px, 62vw, 330px);
}

@media (max-width: 991.98px){
  :root{ --pp-tabbar-h:62px; --pp-header-h:56px; }
}

/* ---------- base ---------- */
html{ scroll-padding-top:calc(var(--pp-header-h) + 12px); }
body{
  background:var(--pp-bg) !important;
  color:var(--pp-text);
  font-family:var(--pp-font) !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  padding-bottom:calc(var(--pp-tabbar-h) + env(safe-area-inset-bottom, 0px));
}
body.pp-lock{ overflow:hidden; }
.pp-wrap{ padding-left:var(--pp-gutter); padding-right:var(--pp-gutter); }
.pp-sr{ position:absolute !important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.pp-main a{ text-decoration:none; }
.pp-main img{ max-width:100%; }
:where(.pp-header, .pp-main, .pp-footer, .pp-tabbar) :focus-visible{
  outline:2px solid var(--pp-gold); outline-offset:3px; border-radius:6px;
}
.pp-h1, .pp-h2, .pp-h3{ font-family:var(--pp-font-display); color:var(--pp-text); letter-spacing:-.02em; margin:0; }

/* ---------- buttons ---------- */
.pp-btn{
  --b:var(--pp-raised);
  display:inline-flex; align-items:center; justify-content:center; gap:.55em;
  min-height:46px; padding:0 1.25em; border-radius:999px; border:1px solid transparent;
  background:var(--b); color:var(--pp-text) !important; font:600 15px/1 var(--pp-font);
  cursor:pointer; white-space:nowrap; transition:transform .15s ease, background-color .15s ease, border-color .15s ease;
  -webkit-tap-highlight-color:transparent;
}
.pp-btn:hover{ transform:translateY(-1px); }
.pp-btn:active{ transform:translateY(0) scale(.98); }
.pp-btn svg{ width:18px; height:18px; flex:none; }
.pp-btn--play{ --b:var(--pp-red); box-shadow:0 10px 30px -10px rgba(232,23,63,.7); }
.pp-btn--play:hover{ --b:var(--pp-red-hi); }
.pp-btn--gold{ --b:var(--pp-gold); color:#1d1305 !important; }
.pp-btn--gold:hover{ --b:var(--pp-gold-hi); }
.pp-btn--ghost{ --b:rgba(255,255,255,.08); border-color:var(--pp-line-2); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.pp-btn--ghost:hover{ --b:rgba(255,255,255,.14); }
.pp-btn--sm{ min-height:36px; font-size:13.5px; padding:0 1em; }
.pp-btn--icon{ width:46px; padding:0; }

/* ==========================================================================
   HEADER
   ========================================================================== */
.pp-header{
  position:sticky; top:0; z-index:1030; height:var(--pp-header-h);
  display:flex; align-items:center; gap:clamp(12px, 2vw, 32px);
  padding:0 var(--pp-gutter);
  background:rgba(14,10,19,.92);
  backdrop-filter:saturate(1.4) blur(14px); -webkit-backdrop-filter:saturate(1.4) blur(14px);
  border-bottom:1px solid var(--pp-line);
  transition:background-color .25s ease, border-color .25s ease;
}
/* hero wale pages pe header transparent rehta hai jab tak scroll na ho */
body.pp-has-hero .pp-header{ position:fixed; left:0; right:0; background:linear-gradient(180deg, rgba(14,10,19,.85), rgba(14,10,19,0)); border-color:transparent; backdrop-filter:none; -webkit-backdrop-filter:none; }
body.pp-has-hero.pp-scrolled .pp-header{ background:rgba(14,10,19,.94); border-color:var(--pp-line); backdrop-filter:saturate(1.4) blur(14px); -webkit-backdrop-filter:saturate(1.4) blur(14px); }

.pp-logo{ display:flex; align-items:center; flex:none; }
.pp-logo img{ height:clamp(28px, 4vw, 38px); width:auto; max-width:160px; object-fit:contain; }

.pp-nav{ display:flex; align-items:center; gap:4px; margin:0; padding:0; list-style:none; }
.pp-nav a{
  display:block; padding:8px 14px; border-radius:999px;
  color:var(--pp-muted); font:600 15px/1.2 var(--pp-font); transition:color .15s, background-color .15s;
}
.pp-nav a:hover{ color:var(--pp-text); }
.pp-nav a.active{ color:var(--pp-text); background:rgba(255,255,255,.08); }

.pp-header__end{ margin-left:auto; display:flex; align-items:center; gap:10px; }
.pp-icon-btn{
  width:42px; height:42px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center;
  color:var(--pp-text) !important; background:rgba(255,255,255,.06); border:1px solid var(--pp-line); cursor:pointer; padding:0;
}
.pp-icon-btn:hover{ background:rgba(255,255,255,.12); }
.pp-icon-btn svg{ width:20px; height:20px; }
.pp-icon-btn--wa{ color:#25d366 !important; }

.pp-premium{
  display:inline-flex; align-items:center; gap:8px; height:40px; padding:0 16px; border-radius:999px;
  background:linear-gradient(180deg, var(--pp-gold-hi), var(--pp-gold)); color:#1d1305 !important;
  font:700 14px/1 var(--pp-font); box-shadow:0 6px 22px -8px rgba(245,184,61,.75);
}
.pp-premium svg{ width:18px; height:18px; }

.pp-login{ display:inline-flex; align-items:center; gap:8px; height:40px; padding:0 16px; border-radius:999px; border:1px solid var(--pp-line-2); color:var(--pp-text) !important; font:600 14px/1 var(--pp-font); }
.pp-login:hover{ background:rgba(255,255,255,.08); }

/* user menu (details/summary — bina JS ke bhi chalta hai) */
.pp-user{ position:relative; }
.pp-user > summary{ list-style:none; cursor:pointer; display:flex; align-items:center; gap:8px; padding:3px 10px 3px 3px; border-radius:999px; border:1px solid var(--pp-line); background:rgba(255,255,255,.05); }
.pp-user > summary::-webkit-details-marker{ display:none; }
.pp-user > summary img{ width:34px; height:34px; border-radius:50%; object-fit:cover; }
.pp-user > summary span{ font:600 14px/1 var(--pp-font); max-width:90px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pp-user__menu{
  position:absolute; right:0; top:calc(100% + 10px); min-width:220px; padding:8px; margin:0; list-style:none;
  background:var(--pp-raised); border:1px solid var(--pp-line-2); border-radius:14px; box-shadow:0 24px 60px -20px rgba(0,0,0,.8);
}
.pp-user__menu a{ display:flex; align-items:center; gap:10px; padding:10px 12px; border-radius:10px; color:var(--pp-text) !important; font:500 14.5px/1.2 var(--pp-font); }
.pp-user__menu a:hover{ background:rgba(255,255,255,.07); }
.pp-user__menu svg{ width:18px; height:18px; color:var(--pp-muted); }

@media (max-width: 991.98px){
  .pp-nav, .pp-header .pp-hide-m{ display:none !important; }
  .pp-premium{ height:36px; padding:0 12px; font-size:13px; }
  .pp-icon-btn{ width:38px; height:38px; }
  .pp-user > summary span{ display:none; }
  .pp-user > summary{ padding:2px; }
}

/* ---------- mobile bottom tab bar ---------- */
.pp-tabbar{
  position:fixed; left:0; right:0; bottom:0; z-index:1030; display:none;
  height:calc(var(--pp-tabbar-h) + env(safe-area-inset-bottom, 0px)); padding-bottom:env(safe-area-inset-bottom, 0px);
  background:rgba(16,11,22,.96); border-top:1px solid var(--pp-line);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
}
.pp-tabbar ul{ display:flex; height:var(--pp-tabbar-h); margin:0; padding:0; list-style:none; }
.pp-tabbar li{ flex:1; }
.pp-tabbar a{ height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; color:var(--pp-muted) !important; font:600 11px/1 var(--pp-font); }
.pp-tabbar a svg{ width:22px; height:22px; }
.pp-tabbar a.active{ color:var(--pp-text) !important; }
.pp-tabbar a.active svg{ color:var(--pp-red-hi); }
.pp-tabbar .pp-tab-premium span.pp-tab-crown{
  width:46px; height:46px; margin-top:-22px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg, var(--pp-gold-hi), var(--pp-gold)); color:#1d1305; border:4px solid var(--pp-bg);
  box-shadow:0 8px 24px -6px rgba(245,184,61,.8);
}
.pp-tabbar .pp-tab-premium{ color:var(--pp-gold) !important; }
@media (max-width: 991.98px){ .pp-tabbar{ display:block; } }

/* ---------- search overlay (purana #popup1, naya look) ---------- */
#popup1.popup-overlay{ background:rgba(10,7,14,.97) !important; z-index:2000; }
#popup1 .search{ max-width:980px; margin:0 auto; padding:calc(var(--pp-header-h) + 10px) var(--pp-gutter) 40px; }
#popup1 .search .title{ font:700 clamp(22px,3vw,32px)/1.1 var(--pp-font-display) !important; color:var(--pp-text) !important; letter-spacing:-.02em; }
#popup1 .search-input input{
  width:100%; height:56px; border-radius:14px !important; border:1px solid var(--pp-line-2) !important;
  background:var(--pp-surface) !important; color:var(--pp-text) !important; font:500 18px var(--pp-font) !important; padding:0 18px !important;
}
#popup1 .close{ top:14px !important; right:18px !important; color:var(--pp-text) !important; opacity:1; }

/* ==========================================================================
   HERO SLIDER
   ========================================================================== */
.pp-hero{ position:relative; background:#000; overflow:hidden; isolation:isolate; }
.pp-hero__track{ position:relative; }
.pp-slide{
  position:absolute; inset:0; opacity:0; visibility:hidden;
  transition:opacity .7s ease, visibility 0s linear .7s;
}
.pp-slide.is-active{ position:relative; opacity:1; visibility:visible; transition:opacity .7s ease; z-index:1; }
.pp-slide__media{ display:block; position:relative; width:100%; aspect-ratio:1100 / 450; max-height:min(86vh, 820px); min-height:420px; overflow:hidden; }
.pp-slide__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 30%; transform:scale(1.04); transition:transform 7s ease-out; }
.pp-slide.is-active .pp-slide__media img{ transform:scale(1); }
.pp-slide__media::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(14,10,19,.92) 0%, rgba(14,10,19,.55) 38%, rgba(14,10,19,0) 68%),
    linear-gradient(0deg, var(--pp-bg) 0%, rgba(14,10,19,0) 38%);
}
.pp-slide__body{
  position:absolute; z-index:2; left:var(--pp-gutter); bottom:clamp(56px, 12vh, 120px);
  width:min(560px, 46vw); display:flex; flex-direction:column; gap:14px;
}
.pp-slide__kicker{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.pp-slide__title{
  font:800 clamp(30px, 4.6vw, 64px)/.98 var(--pp-font-display); letter-spacing:-.035em; margin:0; color:#fff;
  text-wrap:balance; text-shadow:0 2px 30px rgba(0,0,0,.45);
}
.pp-slide__title a{ color:inherit !important; }
.pp-slide__text{ margin:0; color:rgba(244,239,248,.82); font-size:16px; line-height:1.55; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.pp-slide__actions{ display:flex; gap:10px; flex-wrap:wrap; margin-top:4px; }

.pp-hero__nav{ position:absolute; z-index:3; right:var(--pp-gutter); bottom:clamp(56px, 12vh, 120px); display:flex; align-items:center; gap:10px; }
.pp-hero__arrow{ width:44px; height:44px; border-radius:50%; border:1px solid var(--pp-line-2); background:rgba(14,10,19,.5); color:#fff; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.pp-hero__arrow:hover{ background:rgba(255,255,255,.15); }
.pp-hero__arrow svg{ width:20px; height:20px; }
.pp-hero__dots{ display:flex; gap:6px; }
.pp-hero__dot{ position:relative; width:26px; height:4px; border-radius:4px; background:rgba(255,255,255,.28); border:0; padding:0; cursor:pointer; overflow:hidden; }
.pp-hero__dot::after{ content:""; position:absolute; inset:0; background:#fff; transform:scaleX(0); transform-origin:left; }
.pp-hero__dot.is-active{ width:44px; }
.pp-hero__dot.is-active::after{ animation:pp-dot var(--pp-hero-delay, 6s) linear forwards; }
.pp-hero.is-paused .pp-hero__dot.is-active::after{ animation-play-state:paused; }
@keyframes pp-dot{ to{ transform:scaleX(1); } }

/* tablet */
@media (max-width: 991.98px){
  .pp-slide__body{ width:min(560px, 70vw); bottom:64px; }
  .pp-hero__nav{ bottom:22px; right:50%; transform:translateX(50%); }
  .pp-hero__arrow{ display:none; }
}
/* mobile: image upar full-width (poora banner dikhe), text uske neeche */
@media (max-width: 767.98px){
  .pp-slide__media{ aspect-ratio:16 / 10; min-height:0; max-height:none; }
  .pp-slide__media::after{ background:linear-gradient(0deg, var(--pp-bg) 2%, rgba(14,10,19,0) 55%); }
  .pp-slide__body{ position:relative; left:auto; bottom:auto; width:auto; margin-top:-46px; padding:0 var(--pp-gutter) 8px; gap:10px; }
  .pp-slide__title{ font-size:clamp(26px, 8vw, 34px); }
  .pp-slide__text{ font-size:14.5px; }
  .pp-slide__actions .pp-btn{ flex:1; }
  .pp-hero__nav{ position:relative; right:auto; bottom:auto; transform:none; justify-content:center; padding:12px 0 4px; }
  .pp-hero{ background:var(--pp-bg); }
}

/* ---------- chips / badges ---------- */
.pp-chip{
  display:inline-flex; align-items:center; gap:6px; height:26px; padding:0 10px; border-radius:999px;
  background:rgba(255,255,255,.09); color:var(--pp-text); font:600 12.5px/1 var(--pp-font); white-space:nowrap;
}
.pp-chip--gold{ background:rgba(245,184,61,.16); color:var(--pp-gold-hi); }
.pp-chip--free{ background:rgba(52,211,153,.15); color:#7ff0c6; }
.pp-chip--line{ background:transparent; border:1px solid var(--pp-line-2); }
.pp-chip svg{ width:13px; height:13px; }

/* ==========================================================================
   SECTIONS + RAILS
   ========================================================================== */
.pp-section{ padding:clamp(18px, 2.6vw, 30px) 0 0; }
.pp-section:first-child{ padding-top:clamp(16px, 2vw, 26px); }
.pp-sec-head{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; padding:0 var(--pp-gutter); margin-bottom:12px; }
.pp-sec-head h2, .pp-sec-head .pp-sec-title{ font:700 clamp(18px, 2vw, 24px)/1.15 var(--pp-font-display); letter-spacing:-.02em; margin:0; color:var(--pp-text); }
.pp-sec-head h2 a{ color:inherit !important; }
.pp-sec-sub{ color:var(--pp-muted); font-size:14px; margin:4px 0 0; }
.pp-viewall{ flex:none; color:var(--pp-muted) !important; font:600 14px/1 var(--pp-font); padding:8px 0; display:inline-flex; align-items:center; gap:4px; }
.pp-viewall:hover{ color:var(--pp-text) !important; }
.pp-viewall svg{ width:16px; height:16px; }

.pp-rail-wrap{ position:relative; }
.pp-rail{
  display:grid; grid-auto-flow:column; gap:clamp(10px, 1.2vw, 16px);
  grid-auto-columns:var(--pp-poster-w);
  overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory; scroll-padding:0 var(--pp-gutter);
  padding:4px var(--pp-gutter) 14px; margin:0; list-style:none;
  scrollbar-width:none; -webkit-overflow-scrolling:touch;
}
.pp-rail::-webkit-scrollbar{ display:none; }
.pp-rail > *{ scroll-snap-align:start; min-width:0; }
.pp-rail--wide{ grid-auto-columns:var(--pp-wide-w); }

.pp-rail-btn{
  position:absolute; top:4px; bottom:14px; z-index:4; width:clamp(40px, 3.6vw, 56px);
  display:flex; align-items:center; justify-content:center; border:0; padding:0; cursor:pointer;
  color:#fff; opacity:0; transition:opacity .2s ease;
}
.pp-rail-btn svg{ width:28px; height:28px; filter:drop-shadow(0 2px 6px rgba(0,0,0,.6)); }
.pp-rail-btn--prev{ left:0; background:linear-gradient(90deg, rgba(14,10,19,.95), rgba(14,10,19,0)); }
.pp-rail-btn--next{ right:0; background:linear-gradient(270deg, rgba(14,10,19,.95), rgba(14,10,19,0)); }
.pp-rail-btn[hidden]{ display:none; }
@media (hover:hover) and (min-width: 768px){
  .pp-rail-wrap:hover .pp-rail-btn{ opacity:1; }
}

/* ---------- card ---------- */
.pp-card{ position:relative; display:block; color:var(--pp-text) !important; }
.pp-card__media{
  position:relative; display:block; overflow:hidden; border-radius:var(--pp-radius);
  aspect-ratio:2 / 3; background:linear-gradient(135deg, #1d1626, #2a2033);
  box-shadow:0 0 0 1px var(--pp-line) inset;
}
.pp-card--wide .pp-card__media{ aspect-ratio:16 / 9; }
.pp-card__media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .35s ease, transform .4s ease; }
.pp-card__media img.is-loaded, .pp-card__media img[data-loaded]{ opacity:1; }
.pp-card__play{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(0deg, rgba(14,10,19,.75), rgba(14,10,19,.1)); opacity:0; transition:opacity .2s ease;
}
.pp-card__play span{ width:48px; height:48px; border-radius:50%; background:var(--pp-red); display:flex; align-items:center; justify-content:center; box-shadow:0 8px 24px -6px rgba(232,23,63,.8); }
.pp-card__play svg{ width:20px; height:20px; margin-left:2px; color:#fff; }
@media (hover:hover){
  .pp-card:hover .pp-card__media img{ transform:scale(1.05); }
  .pp-card:hover .pp-card__play{ opacity:1; }
}
.pp-badge{
  position:absolute; z-index:2; top:8px; left:8px; display:inline-flex; align-items:center; gap:4px;
  height:22px; padding:0 8px; border-radius:6px; font:700 11px/1 var(--pp-font); letter-spacing:.01em;
}
.pp-badge svg{ width:12px; height:12px; }
.pp-badge--premium{ background:rgba(20,13,4,.78); color:var(--pp-gold-hi); box-shadow:0 0 0 1px rgba(245,184,61,.45) inset; backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px); }
.pp-badge--free{ background:rgba(4,30,20,.78); color:#7ff0c6; box-shadow:0 0 0 1px rgba(52,211,153,.45) inset; }
.pp-badge--soon{ left:auto; right:8px; background:var(--pp-red); color:#fff; }
.pp-card__body{ display:block; padding:9px 2px 0; }
.pp-card__title{ display:block; font:600 14.5px/1.3 var(--pp-font); color:var(--pp-text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin:0; }
.pp-card__meta{ display:block; margin-top:3px; font:500 12.5px/1.3 var(--pp-font); color:var(--pp-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pp-card__meta .pp-star{ color:var(--pp-gold); }

/* ==========================================================================
   TOP 10  (numbers = marquee gold outline)
   ========================================================================== */
.pp-top10 .pp-rail{ grid-auto-columns:clamp(210px, 60vw, 320px); gap:clamp(4px, .8vw, 10px); }
.pp-t10{ position:relative; display:flex; align-items:flex-end; color:var(--pp-text) !important; }
.pp-t10__num{
  flex:none; width:clamp(58px, 16vw, 104px); margin-right:-18px; position:relative; z-index:0;
  font:800 clamp(92px, 24vw, 164px)/.78 var(--pp-font-display); letter-spacing:-.08em; text-align:right;
  color:var(--pp-bg); -webkit-text-stroke:3px var(--pp-gold);
  paint-order:stroke fill; user-select:none;
  text-shadow:0 0 28px rgba(245,184,61,.25);
}
.pp-t10:nth-child(n+10) .pp-t10__num{ width:clamp(92px, 24vw, 150px); letter-spacing:-.12em; }
.pp-t10 .pp-card{ flex:1; min-width:0; position:relative; z-index:1; }
.pp-t10 .pp-card__media{ aspect-ratio:16 / 10; box-shadow:0 18px 40px -18px rgba(0,0,0,.9), 0 0 0 1px var(--pp-line) inset; }

/* ==========================================================================
   Home intro + upsell + explore grid + about/FAQ
   ========================================================================== */
.pp-intro{ padding:clamp(10px, 1.6vw, 18px) var(--pp-gutter) 0; display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 16px; }
.pp-intro h1{ font:700 clamp(16px, 1.6vw, 19px)/1.3 var(--pp-font); color:var(--pp-text); margin:0; letter-spacing:0; }
.pp-intro p{ margin:0; color:var(--pp-muted); font-size:14.5px; }

.pp-upsell{
  margin:clamp(26px, 3vw, 40px) var(--pp-gutter) 0; border-radius:var(--pp-radius-lg); overflow:hidden; position:relative;
  display:grid; grid-template-columns:1fr auto; align-items:center; gap:20px;
  padding:clamp(20px, 3vw, 34px) clamp(20px, 3.4vw, 44px);
  background:
    radial-gradient(120% 140% at 100% 0%, rgba(245,184,61,.28), rgba(245,184,61,0) 55%),
    linear-gradient(120deg, #2a1220, #1a1024 60%, #151020);
  border:1px solid rgba(245,184,61,.25);
}
.pp-upsell h2{ font:800 clamp(22px, 2.8vw, 34px)/1.05 var(--pp-font-display); letter-spacing:-.03em; margin:0 0 8px; color:#fff; }
.pp-upsell p{ margin:0; color:rgba(244,239,248,.8); font-size:15.5px; max-width:60ch; }
.pp-upsell__price{ color:var(--pp-gold-hi); font-weight:700; }
.pp-upsell ul{ display:flex; flex-wrap:wrap; gap:8px 18px; margin:12px 0 0; padding:0; list-style:none; color:var(--pp-text); font-size:14px; }
.pp-upsell li{ display:flex; align-items:center; gap:6px; }
.pp-upsell li svg{ width:16px; height:16px; color:var(--pp-gold); }
@media (max-width: 767.98px){ .pp-upsell{ grid-template-columns:1fr; } .pp-upsell .pp-btn{ width:100%; } }

.pp-grid{
  display:grid; gap:clamp(14px, 1.6vw, 22px) clamp(10px, 1.2vw, 16px);
  grid-template-columns:repeat(auto-fill, minmax(clamp(132px, 30vw, 172px), 1fr));
  padding:0 var(--pp-gutter); margin:0; list-style:none;
}
.pp-grid--wide{ grid-template-columns:repeat(auto-fill, minmax(clamp(220px, 40vw, 260px), 1fr)); }
@media (max-width: 575.98px){
  .pp-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); gap:14px 8px; }
  .pp-grid--wide{ grid-template-columns:repeat(2, minmax(0, 1fr)); gap:14px 10px; }
  .pp-grid .pp-card__title{ font-size:13px; }
  .pp-grid .pp-card__meta{ font-size:11.5px; }
}
@media (max-width: 359.98px){ .pp-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }

.pp-loader{ display:flex; justify-content:center; padding:26px 0; }
.pp-loader span{ width:8px; height:8px; margin:0 4px; border-radius:50%; background:var(--pp-muted); animation:pp-bounce 1s infinite ease-in-out; }
.pp-loader span:nth-child(2){ animation-delay:.15s; } .pp-loader span:nth-child(3){ animation-delay:.3s; }
@keyframes pp-bounce{ 0%,80%,100%{ transform:scale(.5); opacity:.4 } 40%{ transform:scale(1); opacity:1 } }
.pp-end{ text-align:center; color:var(--pp-muted); padding:26px var(--pp-gutter) 6px; font-size:14.5px; }
.pp-end a{ color:var(--pp-text) !important; font-weight:600; text-decoration:underline !important; text-underline-offset:3px; }

.pp-skel-rail{ display:flex; gap:14px; padding:4px var(--pp-gutter) 14px; overflow:hidden; }
.pp-skel-rail i{ flex:none; width:var(--pp-poster-w); aspect-ratio:2/3; border-radius:var(--pp-radius); background:linear-gradient(90deg, #1b1523 0%, #251d2f 50%, #1b1523 100%); background-size:200% 100%; animation:pp-shimmer 1.3s infinite linear; }
@keyframes pp-shimmer{ to{ background-position:-200% 0; } }

.pp-about{ margin:clamp(40px, 5vw, 64px) var(--pp-gutter) 0; padding-top:clamp(28px, 3vw, 40px); border-top:1px solid var(--pp-line); display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:clamp(24px, 4vw, 64px); }
.pp-about h2{ font:700 clamp(20px, 2.2vw, 26px)/1.2 var(--pp-font-display); letter-spacing:-.02em; margin:0 0 12px; color:var(--pp-text); }
.pp-about p{ color:var(--pp-muted); font-size:15px; line-height:1.7; margin:0 0 12px; max-width:68ch; }
.pp-about p a{ color:var(--pp-text) !important; text-decoration:underline !important; text-underline-offset:3px; }
.pp-faq details{ border-bottom:1px solid var(--pp-line); }
.pp-faq summary{ list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:14px 0; font:600 15.5px/1.35 var(--pp-font); color:var(--pp-text); }
.pp-faq summary::-webkit-details-marker{ display:none; }
.pp-faq summary::after{ content:"+"; font:400 24px/1 var(--pp-font); color:var(--pp-muted); transition:transform .2s ease; }
.pp-faq details[open] summary::after{ transform:rotate(45deg); }
.pp-faq details p{ margin:0 0 14px; }
@media (max-width: 767.98px){ .pp-about{ grid-template-columns:1fr; } }

/* ==========================================================================
   LIST PAGES (Movies / Web Series / collections / search)
   ========================================================================== */
.pp-page-head{ padding:clamp(18px, 3vw, 34px) var(--pp-gutter) 6px; }
.pp-page-head h1{ font:800 clamp(28px, 4vw, 46px)/1 var(--pp-font-display); letter-spacing:-.035em; margin:0; color:var(--pp-text); }
.pp-page-head p{ margin:10px 0 0; color:var(--pp-muted); font-size:15px; max-width:70ch; }
.pp-crumbs{ display:flex; flex-wrap:wrap; gap:6px; margin:0 0 10px; padding:0; list-style:none; font-size:13px; color:var(--pp-muted); }
.pp-crumbs li + li::before{ content:"/"; margin-right:6px; opacity:.5; }
.pp-crumbs a{ color:var(--pp-muted) !important; }
.pp-crumbs a:hover{ color:var(--pp-text) !important; }

.pp-filters{ position:sticky; top:var(--pp-header-h); z-index:20; background:rgba(14,10,19,.94); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); padding:10px 0; margin-bottom:14px; border-bottom:1px solid var(--pp-line); }
.pp-chips{ display:flex; gap:8px; overflow-x:auto; padding:0 var(--pp-gutter); scrollbar-width:none; margin:0; list-style:none; }
.pp-chips::-webkit-scrollbar{ display:none; }
.pp-chips + .pp-chips{ margin-top:8px; }
.pp-chips a{
  flex:none; display:inline-flex; align-items:center; height:36px; padding:0 14px; border-radius:999px;
  border:1px solid var(--pp-line-2); color:var(--pp-muted) !important; font:600 13.5px/1 var(--pp-font); white-space:nowrap;
}
.pp-chips a:hover{ color:var(--pp-text) !important; border-color:rgba(255,255,255,.3); }
.pp-chips a.is-on{ background:var(--pp-text); color:var(--pp-bg) !important; border-color:var(--pp-text); }
.pp-chips .pp-chip-label{ flex:none; align-self:center; color:var(--pp-muted); font-size:13px; padding-right:2px; }

.pp-pager{ display:flex; justify-content:center; gap:10px; padding:28px var(--pp-gutter) 0; }
.pp-empty{ text-align:center; padding:60px var(--pp-gutter); color:var(--pp-muted); }
.pp-empty h2{ font:700 22px/1.2 var(--pp-font-display); color:var(--pp-text); margin:0 0 8px; }

.pp-searchbar{ display:flex; gap:10px; padding:0 var(--pp-gutter); margin:16px 0 4px; }
.pp-searchbar input{ flex:1; min-width:0; height:52px; border-radius:14px; border:1px solid var(--pp-line-2); background:var(--pp-surface); color:var(--pp-text); padding:0 18px; font:500 17px var(--pp-font); outline:none; }
.pp-searchbar input:focus{ border-color:var(--pp-gold); }

/* ==========================================================================
   DETAILS (movie / show)
   ========================================================================== */
.pp-dhero{ position:relative; isolation:isolate; overflow:hidden; }
.pp-dhero__bg{ position:absolute; inset:0; z-index:-1; }
.pp-dhero__bg img{ width:100%; height:100%; object-fit:cover; object-position:center 25%; }
.pp-dhero__bg::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(14,10,19,.97) 0%, rgba(14,10,19,.82) 42%, rgba(14,10,19,.35) 75%, rgba(14,10,19,.55) 100%),
    linear-gradient(0deg, var(--pp-bg) 0%, rgba(14,10,19,0) 45%);
}
.pp-dhero__inner{
  display:grid; grid-template-columns:minmax(0, 1fr); gap:clamp(20px, 3vw, 40px); align-items:end;
  padding:calc(var(--pp-header-h) + clamp(40px, 8vh, 110px)) var(--pp-gutter) clamp(24px, 4vw, 44px);
  min-height:min(82vh, 760px);
}
.pp-dhero__content{ max-width:720px; display:flex; flex-direction:column; gap:14px; }
.pp-dhero h1{ font:800 clamp(32px, 5vw, 68px)/.98 var(--pp-font-display); letter-spacing:-.035em; margin:0; color:#fff; text-wrap:balance; }
.pp-meta{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0; padding:0; list-style:none; }
.pp-meta a.pp-chip:hover{ background:rgba(255,255,255,.16); }
.pp-dhero__desc{ color:rgba(244,239,248,.84); font-size:16px; line-height:1.65; margin:0; max-width:64ch; }
.pp-actions{ display:flex; flex-wrap:wrap; gap:10px; margin-top:4px; }
.pp-lock-note{ display:flex; align-items:center; gap:8px; color:var(--pp-gold-hi); font-size:14px; margin:0; }
.pp-lock-note svg{ width:16px; height:16px; flex:none; }
.pp-people{ color:var(--pp-muted); font-size:14.5px; margin:0; line-height:1.6; }
.pp-people strong{ color:var(--pp-text); font-weight:600; margin-right:4px; }
.pp-people a{ color:var(--pp-text) !important; }
.pp-people a:hover{ text-decoration:underline !important; }

@media (max-width: 767.98px){
  .pp-dhero__bg{ position:relative; height:auto; aspect-ratio:16 / 10; }
  .pp-dhero__bg::after{ background:linear-gradient(0deg, var(--pp-bg) 3%, rgba(14,10,19,0) 60%); }
  .pp-dhero__inner{ min-height:0; padding:0 var(--pp-gutter) 20px; margin-top:-56px; }
  .pp-dhero h1{ font-size:clamp(28px, 8.5vw, 38px); }
  .pp-dhero__desc{ font-size:15px; }
  .pp-actions .pp-btn--play, .pp-actions .pp-btn--gold{ flex:1 1 100%; }
  body.pp-has-hero.pp-detail-page .pp-header{ background:linear-gradient(180deg, rgba(14,10,19,.7), rgba(14,10,19,0)); }
}

.pp-readmore{ position:relative; }
.pp-readmore.is-clamped .pp-dhero__desc{ display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.pp-readmore button{ background:none; border:0; padding:4px 0 0; color:var(--pp-text); font:600 14px var(--pp-font); cursor:pointer; text-decoration:underline; text-underline-offset:3px; }

/* seasons + episodes */
.pp-tabs{ display:flex; gap:8px; overflow-x:auto; padding:0 var(--pp-gutter); margin:0 0 16px; list-style:none; scrollbar-width:none; }
.pp-tabs::-webkit-scrollbar{ display:none; }
.pp-tabs button{ flex:none; height:40px; padding:0 18px; border-radius:999px; border:1px solid var(--pp-line-2); background:transparent; color:var(--pp-muted); font:600 14px var(--pp-font); cursor:pointer; }
.pp-tabs button[aria-selected="true"]{ background:var(--pp-text); color:var(--pp-bg); border-color:var(--pp-text); }
.pp-eps{ display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 420px), 1fr)); gap:12px 20px; padding:0 var(--pp-gutter); margin:0; list-style:none; }
.pp-eps[hidden]{ display:none; }
.pp-ep{ display:grid; grid-template-columns:clamp(128px, 34vw, 190px) minmax(0, 1fr); gap:14px; align-items:center; padding:8px; border-radius:14px; color:var(--pp-text) !important; transition:background-color .15s ease; }
.pp-ep:hover{ background:var(--pp-surface); }
.pp-ep .pp-card__media{ aspect-ratio:16 / 9; }
.pp-ep__no{ color:var(--pp-muted); font:600 12.5px var(--pp-font); display:flex; gap:8px; align-items:center; }
.pp-ep__title{ font:600 15.5px/1.3 var(--pp-font); margin:4px 0; color:var(--pp-text); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.pp-ep__desc{ color:var(--pp-muted); font-size:13.5px; line-height:1.45; margin:0; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

/* share sheet */
.pp-share{ position:fixed; inset:0; z-index:2100; display:none; align-items:flex-end; justify-content:center; background:rgba(0,0,0,.6); }
.pp-share.is-open{ display:flex; }
.pp-share__box{ width:min(460px, 100%); background:var(--pp-raised); border-radius:20px 20px 0 0; padding:22px 20px calc(22px + env(safe-area-inset-bottom, 0px)); border:1px solid var(--pp-line-2); }
@media (min-width: 576px){ .pp-share{ align-items:center; } .pp-share__box{ border-radius:20px; } }
.pp-share__box h2{ font:700 19px var(--pp-font-display); margin:0 0 16px; color:var(--pp-text); }
.pp-share__grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:10px; }
.pp-share__grid a, .pp-share__grid button{ display:flex; flex-direction:column; align-items:center; gap:8px; padding:12px 4px; border-radius:12px; background:rgba(255,255,255,.05); border:0; color:var(--pp-text) !important; font:600 12px var(--pp-font); cursor:pointer; }
.pp-share__grid svg{ width:24px; height:24px; }

/* ==========================================================================
   DASHBOARD
   ========================================================================== */
.pp-dash{ display:grid; grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr); gap:clamp(14px, 2vw, 22px); padding:0 var(--pp-gutter); }
.pp-panel{ background:var(--pp-surface); border:1px solid var(--pp-line); border-radius:var(--pp-radius-lg); padding:clamp(18px, 2.4vw, 28px); }
.pp-panel h2{ font:700 18px/1.2 var(--pp-font-display); margin:0 0 14px; color:var(--pp-text); letter-spacing:-.01em; }
.pp-profile{ display:flex; align-items:center; gap:16px; }
.pp-profile img{ width:72px; height:72px; border-radius:50%; object-fit:cover; box-shadow:0 0 0 3px var(--pp-raised), 0 0 0 5px var(--pp-line-2); }
.pp-profile h1{ font:800 clamp(22px, 2.6vw, 30px)/1.1 var(--pp-font-display); letter-spacing:-.02em; margin:0; color:var(--pp-text); }
.pp-profile p{ margin:4px 0 0; color:var(--pp-muted); font-size:14.5px; word-break:break-all; }
.pp-plan{ position:relative; overflow:hidden; }
.pp-plan--active{ background:radial-gradient(120% 120% at 100% 0%, rgba(245,184,61,.2), rgba(245,184,61,0) 60%), var(--pp-surface); border-color:rgba(245,184,61,.3); }
.pp-plan--none{ background:radial-gradient(120% 120% at 100% 0%, rgba(232,23,63,.25), rgba(232,23,63,0) 60%), var(--pp-surface); border-color:rgba(232,23,63,.3); }
.pp-plan__name{ font:800 clamp(22px, 2.4vw, 28px)/1.1 var(--pp-font-display); letter-spacing:-.02em; margin:0 0 6px; color:var(--pp-text); }
.pp-plan__sub{ color:var(--pp-muted); font-size:14.5px; margin:0 0 16px; }
.pp-progress{ height:8px; border-radius:8px; background:rgba(255,255,255,.08); overflow:hidden; margin:0 0 8px; }
.pp-progress span{ display:block; height:100%; border-radius:8px; background:linear-gradient(90deg, var(--pp-gold), var(--pp-gold-hi)); }
.pp-progress--warn span{ background:linear-gradient(90deg, var(--pp-red), var(--pp-red-hi)); }
.pp-quick{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:10px; margin-top:18px; }
.pp-quick a{ display:flex; flex-direction:column; gap:8px; padding:14px; border-radius:14px; background:rgba(255,255,255,.04); border:1px solid var(--pp-line); color:var(--pp-text) !important; font:600 14px var(--pp-font); }
.pp-quick a:hover{ background:rgba(255,255,255,.08); }
.pp-quick svg{ width:22px; height:22px; color:var(--pp-muted); }
.pp-quick small{ color:var(--pp-muted); font-weight:500; font-size:12.5px; }
.pp-kv{ display:grid; grid-template-columns:auto 1fr; gap:8px 16px; margin:0; font-size:14.5px; }
.pp-kv dt{ color:var(--pp-muted); font-weight:500; }
.pp-kv dd{ margin:0; color:var(--pp-text); font-weight:600; text-align:right; }
.pp-danger-link{ background:none; border:0; padding:0; color:#ff8fa3; font:600 13.5px var(--pp-font); cursor:pointer; margin-top:14px; }
.pp-table-wrap{ padding:0 var(--pp-gutter); }
.pp-table{ width:100%; border-collapse:collapse; font-size:14.5px; }
.pp-table th{ text-align:left; color:var(--pp-muted); font-weight:600; padding:12px 14px; border-bottom:1px solid var(--pp-line-2); white-space:nowrap; }
.pp-table td{ padding:14px; border-bottom:1px solid var(--pp-line); color:var(--pp-text); }
@media (max-width: 991.98px){ .pp-dash{ grid-template-columns:1fr; } .pp-quick{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767.98px){
  .pp-table thead{ display:none; }
  .pp-table, .pp-table tbody, .pp-table tr, .pp-table td{ display:block; width:100%; }
  .pp-table tr{ background:var(--pp-surface); border:1px solid var(--pp-line); border-radius:14px; padding:6px 14px; margin-bottom:10px; }
  .pp-table td{ display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px dashed var(--pp-line); text-align:right; word-break:break-all; }
  .pp-table td:last-child{ border-bottom:0; }
  .pp-table td::before{ content:attr(data-label); color:var(--pp-muted); font-weight:500; text-align:left; flex:none; }
}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.pp-footer{ margin-top:clamp(40px, 6vw, 80px); border-top:1px solid var(--pp-line); background:#0b0810; padding:clamp(32px, 4vw, 52px) var(--pp-gutter) 24px; color:var(--pp-muted); }
.pp-footer__grid{ display:grid; grid-template-columns:minmax(0, 1.4fr) repeat(3, minmax(0, 1fr)); gap:28px; }
.pp-footer h2{ font:700 15px var(--pp-font); color:var(--pp-text); margin:0 0 12px; }
.pp-footer ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:9px; }
.pp-footer a{ color:var(--pp-muted) !important; font-size:14.5px; }
.pp-footer a:hover{ color:var(--pp-text) !important; }
.pp-footer__brand img{ height:34px; width:auto; margin-bottom:14px; }
.pp-footer__brand p{ font-size:14.5px; line-height:1.65; margin:0 0 16px; max-width:44ch; }
.pp-social{ display:flex; gap:10px; }
.pp-social a{ width:40px; height:40px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--pp-line-2); }
.pp-social svg{ width:18px; height:18px; }
.pp-stores{ display:flex; gap:10px; flex-wrap:wrap; }
.pp-stores img{ height:40px; width:auto; }
.pp-footer__bottom{ margin-top:32px; padding-top:18px; border-top:1px solid var(--pp-line); display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; font-size:13.5px; }
@media (max-width: 767.98px){ .pp-footer__grid{ grid-template-columns:1fr 1fr; } .pp-footer__brand{ grid-column:1 / -1; } }

/* scroll-top button ko tabbar ke upar rakho */
.scroll-top{ bottom:calc(var(--pp-tabbar-h) + 16px) !important; }

/* legacy banner ads spacing */
.pp-ad{ padding:18px var(--pp-gutter) 0; }
.pp-ad img{ max-width:100%; height:auto; border-radius:12px; }

@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
}

/* fixes */
header.pp-header{ box-shadow:none !important; margin:0; }
@media (max-width: 767.98px){
  .pp-slide__kicker{ flex-wrap:nowrap; overflow:hidden; mask-image:linear-gradient(90deg, #000 85%, transparent); -webkit-mask-image:linear-gradient(90deg, #000 85%, transparent); }
}
/* hero pages: header ka gradient ek pseudo-element pe (hard edge / line nahi aayegi) */
body.pp-has-hero .pp-header{ background:transparent !important; border-bottom:0 !important; }
body.pp-has-hero .pp-header::before{
  content:""; position:absolute; left:0; right:0; top:0; height:calc(var(--pp-header-h) + 56px); z-index:-1; pointer-events:none;
  background:linear-gradient(180deg, rgba(14,10,19,.82) 0%, rgba(14,10,19,.45) 55%, rgba(14,10,19,0) 100%);
  transition:opacity .25s ease;
}
body.pp-has-hero .pp-header::after{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; opacity:0; transition:opacity .25s ease;
  background:rgba(14,10,19,.94); border-bottom:1px solid var(--pp-line);
  backdrop-filter:saturate(1.4) blur(14px); -webkit-backdrop-filter:saturate(1.4) blur(14px);
}
body.pp-has-hero.pp-scrolled .pp-header::after{ opacity:1; }
body.pp-has-hero.pp-scrolled .pp-header::before{ opacity:0; }
