/**
 * Ripple Web Module — External Stylesheet
 * All styles scoped under .ripple-wrap with high specificity
 * to override Bootstrap/global site CSS.
 * Includes: shimmer loaders, cards, rails, hero, detail, category
 */

/* ===== CSS Variables ===== */
.ripple-wrap{
  --rp-bg:#080a1e;--rp-bg2:#0b0d29;--rp-nav:#0a0c24;
  --rp-hero1:#241a52;--rp-hero2:#0d0f2e;
  --rp-pink-a:#ff2d78;--rp-pink-b:#ff6fa8;--rp-gold:#e8b34d;
  --rp-text:#ffffff;--rp-muted:#a7abce;--rp-muted2:#7d82a8;
  --rp-surface:#14173a;--rp-surface2:#1b1f49;
  --rp-line:rgba(255,255,255,.10);--rp-line2:rgba(255,255,255,.16);
  --rp-danger:#ff3b5c;
  --rp-shadow:0 20px 50px rgba(0,0,0,.5);
}
.ripple-wrap .rp-banner-desc {
  scrollbar-width:auto !important;
}
/* .rp-watchlist-btn{
  display:none !important;
} */

/* ===== Base Reset (high specificity to override Bootstrap) ===== */
.ripple-wrap,
.ripple-wrap *,
.ripple-wrap *::before,
.ripple-wrap *::after{
  box-sizing:border-box;
}
.ripple-wrap{
  background:transparent !important;
  color:#ffffff !important;
  font-family:'Inter-Regular' !important;
  min-height:100vh;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  padding:0 !important;
  margin:9x 0 0 0 !important;
  line-height:1.5 !important;
}
.ripple-wrap h1,
.ripple-wrap h2,
.ripple-wrap h3,
.ripple-wrap h4{
  font-family:'Inter-SemiBold' !important;
  color:#ffffff !important;
  margin:0 !important;
  padding:0 !important;
  line-height:normal !important;
  letter-spacing:normal !important;
}
.ripple-wrap p{
  margin:0 !important;
  padding:0 !important;
  color:#cfd2ea !important;
}
.ripple-wrap img{
  display:block;
  max-width:100%;
  border:none !important;
  outline:none !important;
}

.ripple-wrap button{
  font-family:'Inter-SemiBold' !important;
  cursor:pointer;
  border:none !important;
  background:none;
  color:inherit;
  outline:none !important;
  box-shadow:none !important;
  padding:0;
  margin:0;
  line-height:1;
}
.ripple-wrap a{
  text-decoration:none !important;
  color:inherit !important;
}
.ripple-wrap ::-webkit-scrollbar{height:0;width:0;}
.ripple-wrap *{scrollbar-width:none;}

/* ===== Shimmer / Skeleton Loader ===== */
@keyframes rp-shimmer{
  0%{background-position:-200% 0;}
  100%{background-position:200% 0;}
}
.ripple-wrap .rp-shimmer{
  background:linear-gradient(90deg, #14173a 25%, #1e2250 37%, #14173a 63%) !important;
  background-size:200% 100% !important;
  animation:rp-shimmer 1.4s ease-in-out infinite;
  border-radius:10px;
}
.ripple-wrap .rp-shimmer-chip{width:90px;height:40px;border-radius:22px;}
.ripple-wrap .rp-shimmer-hero-title{width:340px;height:46px;margin-bottom:14px;}
.ripple-wrap .rp-shimmer-hero-desc{width:480px;height:60px;margin-bottom:20px;}
.ripple-wrap .rp-shimmer-hero-btn{width:180px;height:52px;border-radius:34px;}
.ripple-wrap .rp-shimmer-hero-poster{width:78%;height:86%;border-radius:16px;position:absolute;top:7%;left:50%;transform:translateX(-50%);}
.ripple-wrap .rp-shimmer-rail-title{width:200px;height:28px;margin-bottom:14px;}
.ripple-wrap .rp-shimmer-card{flex:0 0 auto;width:186px;height:331px;border-radius:14px;}
.ripple-wrap .rp-shimmer-card-landscape{flex:0 0 auto;width:300px;height:169px;border-radius:12px;}
.ripple-wrap .rp-shimmer-card-p34{flex:0 0 auto;width:200px;height:267px;border-radius:12px;}
.ripple-wrap .rp-shimmer-ep{flex:0 0 auto;width:230px;height:130px;border-radius:12px;}
.ripple-wrap .rp-shimmer-chips{display:flex;gap:12px;padding:14px 30px;}
.ripple-wrap .rp-shimmer-rail{display:flex;gap:18px;padding:4px 46px 8px;}


/* ===== Chip Row ===== */
/* ===== Chip Row ===== */
.ripple-wrap .rp-chips{
  padding:10px 16px;
  border-top:1px solid rgba(46, 47, 49, 0.5);
  z-index:99;
  background:rgba(0, 0, 55, 1);
  width:100%;
  white-space:nowrap;
  overflow-x:auto;
  display:flex;
  gap:0;
  margin:9px 0 0 0;
}
.ripple-wrap .rp-chip{
  background:rgba(255, 255, 255, 0.25);
  color:#fff;
  font-family:'Inter-Regular' !important;
  font-weight:400 !important;
  padding:6px 16px;
  font-size:13px;
  margin-right:10px;
  border:none !important;
  border-radius:50px;
  backdrop-filter:blur(1px);
  -webkit-backdrop-filter:blur(1px);
  line-height:normal;
  box-shadow:0 4px 12px rgba(0, 0, 0, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.35), inset 0 -1px 0 rgba(255, 255, 255, 0.08);
  cursor:pointer;
}
.ripple-wrap .rp-chip.on,
.ripple-wrap .rp-chip:hover{
  background:linear-gradient(135deg, #FF73C6, #EC008C) !important;
  border:none !important;
  border-radius:50px;
  color:#fff;
  font-family:'Inter-Regular' !important;
  font-weight:400 !important;
}
/* other chips while a tag is loading */
.ripple-wrap .rp-chip.rp-chip-disabled{
  opacity:.45;
  cursor:not-allowed;
  pointer-events:none;
}
.ripple-wrap .rp-chip .live-dot{
  display:inline-block;width:8px;height:8px;border-radius:50%;
  background:#ff3b5c !important;margin-right:7px;vertical-align:middle;
}

/* ===== Screen Management ===== */
.ripple-wrap .rp-screen{display:none;}
.ripple-wrap .rp-screen.on{display:block;animation:rp-fade .35s ease;}
@keyframes rp-fade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}

/* ===== Hero Section ===== */
.ripple-wrap .rp-hero{position:relative;min-height:520px;padding:36px 0 20px;overflow:hidden;}
.ripple-wrap .rp-hero-bg{
  position:absolute;inset:0;z-index:0;
  background:radial-gradient(120% 90% at 78% 8%, #241a52 0%, rgba(20,14,48,.5) 42%, #080a1e 78%) !important;
}
.ripple-wrap .rp-hero-inner{
  position:relative;z-index:2;display:grid;
  grid-template-columns:minmax(360px,0.9fr) 1.25fr;
  gap:40px;align-items:center;padding:0 46px;max-width:1600px;margin:0 auto;
}
.ripple-wrap .rp-hero-eyebrow{
  display:flex;align-items:center;gap:10px;
  font-family:'Inter-SemiBold' !important;font-weight:800;
  letter-spacing:3px;font-size:13px;margin-bottom:16px !important;
  color:#ffffff !important;
}
.ripple-wrap .rp-hero h1{
  font-size:52px !important;line-height:1.03 !important;font-weight:800 !important;margin-bottom:14px !important;
}
.ripple-wrap .rp-hero p{
  font-size:16px !important;line-height:1.6 !important;color:#cfd2ea !important;max-width:560px;margin-bottom:16px !important;
}
.ripple-wrap .rp-hero-tags{
  display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;
  font-size:14px;font-weight:600;color:#e4e6f6 !important;margin-bottom:26px;
}
.ripple-wrap .rp-hero-tags span{position:relative;color:#e4e6f6 !important;}
.ripple-wrap .rp-hero-tags span:not(:last-child)::after{
  content:'|';margin-left:14px;color:#7d82a8;font-weight:400;
}
.ripple-wrap .rp-hero-actions{display:flex;align-items:center;gap:16px;}
.ripple-wrap .rp-btn-resume{
  display:flex !important;align-items:center;gap:12px;
  background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;
  padding:16px 30px !important;border-radius:34px !important;
  font-weight:700 !important;font-size:17px !important;
  color:#ffffff !important;
  box-shadow:0 12px 30px rgba(255,45,120,.4) !important;
  transition:.15s;border:none !important;
}
.ripple-wrap .rp-btn-resume:hover{transform:translateY(-2px);}
.ripple-wrap .rp-btn-round{
  width:56px !important;height:56px !important;border-radius:50% !important;
  background:#1b1f49 !important;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.16) !important;transition:.15s;
}
.ripple-wrap .rp-btn-round.pb_add,
.ripple-wrap .rp-watchlist-btn,
.ripple-wrap .rp-banner-wl,
.ripple-wrap .rp-card-wl{
  position:relative !important;
  z-index:30 !important;
  pointer-events:auto !important;
}
.ripple-wrap .rp-banner-btns,
.ripple-wrap .rp-hover-ov,
.ripple-wrap .rp-banner-content{
  pointer-events:auto !important;
}
.ripple-wrap .rp-pcard{
  cursor:pointer;
}
.ripple-wrap .rp-pcard .rp-watchlist-btn,
.ripple-wrap .rp-pcard .play{
  cursor:pointer;
}
.ripple-wrap .rp-btn-round:hover{background:#262a5e !important;transform:translateY(-2px);}
.ripple-wrap .rp-btn-round svg{width:24px;height:24px;}
.ripple-wrap .rp-btn-round.pb_add,
.ripple-wrap .rp-watchlist-btn,
.ripple-wrap .rp-banner-wl,
.ripple-wrap .rp-card-wl{
  position:relative !important;
  z-index:30 !important;
  pointer-events:auto !important;
}
.ripple-wrap .rp-banner-btns,
.ripple-wrap .rp-hover-ov,
.ripple-wrap .rp-banner-content{
  pointer-events:auto !important;
}
.ripple-wrap .rp-pcard .rp-watchlist-btn,
.ripple-wrap .rp-pcard .play{
  cursor:pointer;
}
.ripple-wrap .rp-hero-art{position:relative;height:440px;}
.ripple-wrap .rp-hero-art .rp-frame{
  position:absolute;border-radius:16px;overflow:hidden;
  box-shadow:0 30px 70px rgba(0,0,0,.6);
  border:3px solid rgba(255,255,255,.09) !important;
}
.ripple-wrap .rp-hero-art .rp-f1{width:78%;height:86%;top:7%;left:50%;transform:translateX(-50%);z-index:3;}
.ripple-wrap .rp-hero-art .rp-frame img{width:100%;height:100%;object-fit:cover;}


/* ===== Rails ===== */
.ripple-wrap .rp-rail-sec{padding:26px 0 6px;}
.ripple-wrap .rp-rail-head{display:flex;align-items:center;gap:12px;padding:0 46px 14px;}
.ripple-wrap .rp-rail-head h3{font-size:24px !important;font-weight:700 !important;color:#ffffff !important;}
.ripple-wrap .rp-rail-head .rp-chev{color:#ff6fa8 !important;display:grid;place-items:center;cursor:pointer;}
.ripple-wrap .rp-rail-wrap{position:relative;}
.ripple-wrap .rp-rail{display:flex;gap:18px;padding:4px 40px 8px;overflow-x:hidden;flex-wrap:nowrap;}
.ripple-wrap .rp-rail:not(.owl-loaded) .rp-pcard{flex:0 0 calc((100% - 18px*5) / 6);}

/* Prevent the uninitialised Owl markup from flashing at its natural image size
   during a hard reload. Owl adds .owl-loaded synchronously once its widths and
   stage wrappers are ready. */
.ripple-wrap .rp-rail.owl-carousel:not(.owl-loaded),
.ripple-wrap .rp-ep-rail.owl-carousel:not(.owl-loaded){
  visibility:hidden;
}
.ripple-wrap .rp-rail.owl-carousel.owl-loaded,
.ripple-wrap .rp-ep-rail.owl-carousel.owl-loaded{
  visibility:visible;
}
.ripple-wrap .rp-ep-rail.owl-carousel.rp-carousel-refreshing{
  visibility:hidden;
}
.ripple-wrap .rp-rail-arrow{
  position:absolute;top:0;bottom:8px;width:64px;z-index:8;display:grid;place-items:center;
  border:none !important;opacity:0;transition:opacity .2s;cursor:pointer;background:none !important;
}
.ripple-wrap .rp-rail-wrap:hover .rp-rail-arrow{opacity:1;}
.ripple-wrap .rp-rail-arrow.l{left:0;background:linear-gradient(90deg, #080a1e 20%, transparent) !important;justify-items:start;padding-left:14px;}
.ripple-wrap .rp-rail-arrow.r{right:0;background:linear-gradient(270deg, #080a1e 20%, transparent) !important;justify-items:end;padding-right:14px;}
.ripple-wrap .rp-rail-arrow div{
  width:44px;height:44px;border-radius:50%;
  background:rgba(20,23,58,.9) !important;border:1px solid rgba(255,255,255,.16) !important;
  display:grid;place-items:center;
}
.ripple-wrap .rp-rail-arrow div:hover{background:#1b1f49 !important;}

/* ===== Ripple Detail Page ===== */
.ripple-wrap.rp-detail-page .rp-detail-shimmer{
  animation:rp-shimmer 1.4s ease-in-out infinite;
  background:linear-gradient(90deg,#14173a 25%,#1e2250 37%,#14173a 63%) !important;
  background-size:200% 100% !important;
}
.ripple-wrap.rp-detail-page.rp-detail-loaded .rp-detail-shimmer-wrap{display:none !important;}
.ripple-wrap.rp-detail-page.rp-detail-loaded .rp-detail-content{opacity:1 !important;}
.ripple-wrap.rp-detail-page .rp-detail-content{opacity:0;transition:opacity .3s ease;}
.ripple-wrap.rp-detail-page .rp-banner-slide{position:relative;}
.ripple-wrap.rp-detail-page .rp-banner-img{
  position:relative;
  width:100%;
  padding-bottom:56.25%;
  overflow:hidden;
  background:#080a1e !important;
}
.ripple-wrap.rp-detail-page .rp-banner-img img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
/* Banner trailer video — visible when playing */
.rp-banner-video.removeImg, .rp-banner-slide .rp-banner-video.removeImg { opacity:1 !important; }
.ripple-wrap.rp-detail-page .rp-banner-gradient{
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#080a1e 0%, rgba(8,10,30,.65) 40%, transparent 70%), linear-gradient(90deg, rgba(8,10,30,.82) 0%, transparent 55%);
  pointer-events:none;
}
.ripple-wrap.rp-detail-page .inline-read-more{color:#ff6fa8;cursor:pointer;font-weight:700;}
.ripple-wrap.rp-detail-page .rp-banner-btns{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:10px;
}
.ripple-wrap.rp-detail-page .share_hl,
.ripple-wrap.rp-detail-page .shareHls,
.ripple-wrap.rp-detail-page .shv_nn{
  background:#1b1f49 !important;
  box-shadow:none !important;
  border:none !important;
  border-radius:50%;
}
.ripple-wrap.rp-detail-page .share_hl{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 !important;
  margin:0 !important;
}
.ripple-wrap.rp-detail-page .shareHls{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:0;
}
.ripple-wrap.rp-detail-page .shareHls img{
  display:block;
  width:16px !important;
  height:16px !important;
  background:transparent !important;
}
.ripple-wrap.rp-detail-page .descrpition_title_dt#detail-description{
  display:-webkit-box !important;
  -webkit-line-clamp:3 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  margin-bottom:0 !important;
}
.ripple-wrap.rp-detail-page .descrpition_title_dt#detail-description[data-expanded="true"]{
  display:block !important;
  -webkit-line-clamp:unset !important;
  -webkit-box-orient:unset !important;
  overflow:visible !important;
}
.ripple-wrap.rp-detail-page .descrpition_title_dt#detail-description::-webkit-scrollbar{
  width:7px;
  background:transparent;
}
.ripple-wrap.rp-detail-page .descrpition_title_dt#detail-description::-webkit-scrollbar-track{
  background:rgba(255,255,255,.15);
  border-radius:10px;
}
.ripple-wrap.rp-detail-page .descrpition_title_dt#detail-description::-webkit-scrollbar-thumb{
  background:var(--pbc, #ec008c);
  border-radius:10px;
}
.ripple-wrap.rp-detail-page .share_hl_popup{
  position:fixed;
  inset:0;
  z-index:9999;
  background:rgba(0,0,0,.72);
  display:grid;
  place-items:center;
  padding:16px;
}
.ripple-wrap.rp-detail-page .share_modal{
  width:min(100%, 520px);
  background:#10142b;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  box-shadow:0 24px 60px rgba(0,0,0,.4);
  padding:18px;
}
.ripple-wrap.rp-detail-page .share_modal_header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;}
.ripple-wrap.rp-detail-page .share_modal_title{color:#fff;font-size:18px;font-weight:700;}
.ripple-wrap.rp-detail-page .share_social_wrapper{display:flex;align-items:center;gap:10px;}
.ripple-wrap.rp-detail-page .share_social_icons{display:flex;gap:16px;overflow-x:auto;padding:8px 2px 14px;flex:1;}
.ripple-wrap.rp-detail-page .share_social_item{min-width:88px;text-align:center;}
.ripple-wrap.rp-detail-page .share_social_btn{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);margin:0 auto 8px;border:none;cursor:pointer;color:#fff;text-decoration:none;}
.ripple-wrap.rp-detail-page .share_social_label{color:#d7dcf6;font-size:12px;}
.ripple-wrap.rp-detail-page .share_url_bar{display:flex;gap:10px;margin-top:10px;padding:10px;border-radius:12px;background:rgba(255,255,255,.06);}
.ripple-wrap.rp-detail-page .share_url_txt{flex:1;color:#d7dcf6;font-size:12px;word-break:break-all;}
.ripple-wrap.rp-detail-page .share_copy_btn{background:#ff2f92;color:#fff;border:none;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer;}

/* ===== Portrait Card (186 x 331) ===== */
.ripple-wrap .rp-pcard{flex:0 0 auto;cursor:pointer;}
.ripple-wrap .rp-pcard .rp-flag{position:absolute;top:10px;left:10px;z-index:3;font-family:'Inter-SemiBold' !important;font-weight:800;font-size:9px;letter-spacing:1px;padding:4px 8px;border-radius:6px;background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;color:#fff !important;display:none !important;}
.ripple-wrap .rp-pcard .rp-poster{
  position:relative;width:100%;aspect-ratio:9/16;border-radius:14px;overflow:hidden;
  background:#14173a !important;box-shadow:0 10px 24px rgba(0,0,0,.42);transition:transform .2s, box-shadow .2s;
}
.ripple-wrap .rp-pcard .rp-poster img{width:100%;height:100%;object-fit:cover;}
.ripple-wrap .rp-pcard:hover .rp-poster{transform:translateY(-6px) scale(1.03);box-shadow:0 20px 40px rgba(0,0,0,.55);}

.ripple-wrap .rp-pcard .rp-flag{position:absolute;top:10px;left:10px;z-index:3;font-family:'Inter-SemiBold' !important;font-weight:800;font-size:9px;letter-spacing:1px;padding:4px 8px;border-radius:6px;background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;color:#fff !important;}
.ripple-wrap .rp-pcard .rp-type-tag{position:absolute;top:10px;right:10px;z-index:3;font-size:10px;font-weight:600;padding:4px 9px;border-radius:20px;background:rgba(8,10,30,.72) !important;border:1px solid rgba(255,255,255,.16) !important;color:#fff !important;}
.ripple-wrap .rp-pcard .rp-category-tag{position:absolute;top:10px;right:10px;z-index:3;font-size:10px;font-weight:600;padding:4px 9px;border-radius:20px;background:rgba(8,10,30,.72) !important;border:1px solid rgba(255,255,255,.16) !important;color:#fff !important;display:none !important;}
.ripple-wrap .rp-pcard .rp-card-meta{padding:8px 4px 4px;font-size:12px;color:rgba(200,205,230,.7);line-height:1.3;}
.ripple-wrap .rp-pcard .rp-card-meta .rp-card-title{margin:0 0 2px;font-size:13px;font-weight:600;color:#e4e6f6;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;}
.ripple-wrap .rp-pcard .rp-card-meta .rp-card-subtitle{margin:0;font-size:12px;color:rgba(200,205,230,.7);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;}
.ripple-wrap .rp-pcard .rp-grad{position:absolute;inset:0;background:linear-gradient(0deg, rgba(4,5,20,.9) 0%, rgba(4,5,20,0) 44%) !important;pointer-events:none;}
.ripple-wrap .rp-pcard .rp-hover-ov{position:absolute;inset:0;z-index:4;opacity:0;transition:opacity .2s;background:linear-gradient(0deg, rgba(6,7,26,.96) 0%, rgba(6,7,26,.35) 60%, rgba(6,7,26,.55) 100%) !important;display:flex;flex-direction:column;justify-content:flex-end;padding:14px;}
.ripple-wrap .rp-pcard:hover .rp-hover-ov{opacity:1;}
.ripple-wrap .rp-pcard .rp-hover-ov .rp-hdesc{font-size:12px;color:#cfd2ea !important;line-height:1.4;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}
.ripple-wrap .rp-pcard .rp-hover-ov .rp-hrow{display:flex;gap:9px;}
.ripple-wrap .rp-pcard .rp-minibtn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14) !important;border:1px solid rgba(255,255,255,.16) !important;transition:.15s;}
.ripple-wrap .rp-pcard .rp-minibtn.play{background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;border:none !important;}
.ripple-wrap .rp-pcard .rp-minibtn:hover{transform:scale(1.08);}
.ripple-wrap .rp-pcard .rp-ptitle{position:absolute;left:12px;right:12px;bottom:12px;z-index:3;font-size:14px !important;font-weight:600 !important;line-height:1.25 !important;color:#fff !important;}
.ripple-wrap .rp-pcard:hover .rp-ptitle{opacity:0;}
.ripple-wrap .rp-pcard .rp-caption{padding:10px 2px 0;font-size:14px;font-weight:500;color:#e4e6f6 !important;}
.ripple-wrap .rp-pcard .rp-cap-sub{font-size:12px;color:#7d82a8 !important;margin-top:2px;}
.ripple-wrap .rp-pcard .rp-prog{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.2) !important;z-index:3;}
.ripple-wrap .rp-pcard .rp-prog i{display:block;height:100%;background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;}
/* ===== Landscape Card (300x169) ===== */
.ripple-wrap .rp-lcard{flex:0 0 auto;width:300px;cursor:pointer;}
.ripple-wrap .rp-lcard .rp-thumb{width:300px;height:169px;border-radius:12px;overflow:hidden;background:#14173a !important;box-shadow:0 10px 24px rgba(0,0,0,.4);transition:.2s;}
.ripple-wrap .rp-lcard .rp-thumb img{width:100%;height:100%;object-fit:cover;}
.ripple-wrap .rp-lcard:hover .rp-thumb{transform:translateY(-5px) scale(1.02);}
.ripple-wrap .rp-lcard .rp-cap{padding:9px 2px 0;font-size:14px;font-weight:600;color:#e4e6f6 !important;}

/* ===== 3:4 Card (200x267) ===== */
.ripple-wrap .rp-p34{flex:0 0 auto;width:200px;cursor:pointer;}
.ripple-wrap .rp-p34 .rp-thumb{width:200px;height:267px;border-radius:12px;overflow:hidden;background:#14173a !important;box-shadow:0 10px 24px rgba(0,0,0,.4);transition:.2s;}
.ripple-wrap .rp-p34 .rp-thumb img{width:100%;height:100%;object-fit:cover;}
.ripple-wrap .rp-p34:hover .rp-thumb{transform:translateY(-5px) scale(1.03);}
.ripple-wrap .rp-p34 .rp-cap{padding:9px 2px 0;font-size:14px;font-weight:600;color:#e4e6f6 !important;}

/* ===== Promo Banner ===== */
.ripple-wrap .rp-promo{
  margin:16px 46px 4px;border-radius:14px;padding:12px 24px;position:relative;overflow:hidden;
  background:linear-gradient(100deg, #2a1150, #3a1560 42%, #141a44) !important;
  border:1px solid rgba(255,255,255,.16) !important;display:flex;align-items:center;gap:22px;
}
.ripple-wrap .rp-promo .rp-pinfo{flex:1;}
.ripple-wrap .rp-promo .rp-peyebrow{font-family:'Inter-SemiBold' !important;font-weight:800;letter-spacing:2px;font-size:10px;margin-bottom:3px;display:flex;align-items:center;gap:7px;color:#fff !important;}
.ripple-wrap .rp-promo h3{font-size:17px !important;margin-bottom:2px !important;color:#fff !important;}
.ripple-wrap .rp-promo p{color:#a7abce !important;font-size:12px !important;max-width:640px;line-height:1.4 !important;}
.ripple-wrap .rp-promo .rp-go{
  display:flex;align-items:center;gap:9px;
  background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;
  padding:10px 20px !important;border-radius:26px !important;
  font-weight:700 !important;font-size:14px;white-space:nowrap;color:#fff !important;transition:.15s;
}
.ripple-wrap .rp-promo .rp-go:hover{transform:translateY(-2px);}

/* ===== Category Page ===== */
.ripple-wrap .rp-cat-head{padding:6px 46px 8px;display:flex;align-items:center;gap:16px;}
.ripple-wrap .rp-cat-head .rp-back{
  width:46px;height:46px;border-radius:50%;
  background:#1b1f49 !important;border:1px solid rgba(255,255,255,.16) !important;
  display:grid;place-items:center;cursor:pointer;
}
.ripple-wrap .rp-cat-head .rp-back:hover{background:#262a5e !important;}
.ripple-wrap .rp-cat-head h2{font-size:32px !important;font-weight:700 !important;}
.ripple-wrap .rp-cat-head .rp-count{color:#a7abce !important;font-size:15px;margin-left:4px;}
.ripple-wrap .rp-cat-grid{display:flex;flex-wrap:wrap;gap:26px 18px;padding:22px 40px 70px;}
.ripple-wrap .rp-cat-grid .rp-pcard{width:auto;flex:0 0 calc((100% - 18px*5) / 6);}
.ripple-wrap .rp-cat-grid .rp-pcard .rp-poster{width:100%;height:auto;aspect-ratio:9/16;}

/* ===== Category Page Top Bar (back button + title) ===== */
.ripple-wrap .rp-cat-topbar{padding:24px 46px 10px;}
.ripple-wrap .rp-cat-topbar nav{display:flex;align-items:center;gap:16px;}
.ripple-wrap .rp-cat-topbar .rp-cat-back{
  font-size:18px !important;
  width:42px;
  height:42px;
  line-height:normal;
  border-radius:50%;
  background:var(--lang-btn-bg) !important;
  box-shadow:0 4px 12px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.35), inset 0 -1px 0 rgba(255,255,255,0.08);
  backdrop-filter:blur(1px);
  -webkit-backdrop-filter:blur(1px);
  display:flex !important;
  align-items:center;
  justify-content:center;
  color:#fff !important;
  cursor:pointer;
  flex:0 0 auto;
}
.ripple-wrap .rp-cat-topbar .rp-cat-back img{height:25px;width:25px;}
.ripple-wrap .rp-cat-topbar .rp-cat-topbar-title{
  margin:0;font-size:1.25rem !important;font-weight:700 !important;line-height:1.2;color:#fff;text-transform:uppercase;
}
/* ===== Detail Page ===== */
.ripple-wrap .rp-detail-hero{position:relative;min-height:540px;overflow:hidden;}
.ripple-wrap .rp-detail-bg{position:absolute;inset:0;z-index:0;}
.ripple-wrap .rp-detail-bg img{width:100%;height:620px;object-fit:cover;opacity:.5;}
.ripple-wrap .rp-detail-bg::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg, #080a1e 8%, rgba(8,10,30,.7) 42%, rgba(8,10,30,.25) 70%),
             linear-gradient(0deg, #080a1e 4%, transparent 60%) !important;
}
.ripple-wrap .rp-detail-inner{
  position:relative;z-index:2;display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:center;
  padding:40px 46px 20px;max-width:1600px;margin:0 auto;
}
.ripple-wrap .rp-detail-info h2{font-size:46px !important;line-height:1.04 !important;font-weight:800 !important;margin-bottom:14px !important;}
.ripple-wrap .rp-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;color:#a7abce !important;margin-bottom:14px;}
.ripple-wrap .rp-detail-meta .rp-imdb{background:#e8b34d !important;color:#111 !important;font-weight:800;font-size:11px;padding:2px 6px;border-radius:4px;}
.ripple-wrap .rp-detail-meta span{color:#a7abce !important;}
.ripple-wrap .rp-detail-genres{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}
.ripple-wrap .rp-detail-genres span{
  font-size:12px;padding:6px 13px;border-radius:20px;
  background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.10) !important;color:#d7d9ee !important;
}
.ripple-wrap .rp-detail-actions{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.ripple-wrap .rp-detail-desc{font-size:15px !important;line-height:1.65 !important;color:#cfd2ea !important;max-width:600px;}
.ripple-wrap .rp-detail-banner{
  height:420px;border-radius:18px;overflow:hidden;
  box-shadow:0 30px 70px rgba(0,0,0,.6);
  border:3px solid rgba(255,255,255,.09) !important;transform:rotate(1.4deg);
}
.ripple-wrap .rp-detail-banner img{width:100%;height:100%;object-fit:cover;}
.ripple-wrap .rp-hero-back{
  position:absolute;top:24px;left:34px;z-index:5;width:48px;height:48px;border-radius:50%;
  background:rgba(20,23,58,.7) !important;border:1px solid rgba(255,255,255,.16) !important;
  display:grid;place-items:center;cursor:pointer;
}
.ripple-wrap .rp-hero-back:hover{background:#1b1f49 !important;}

/* ===== Tabs ===== */
.ripple-wrap .rp-tabs{display:flex;gap:28px;padding:10px 0 0;border-bottom:1px solid rgba(255,255,255,.10) !important;}
.ripple-wrap .rp-tab{
  padding:14px 2px;font-size:16px;font-weight:600;color:#a7abce !important;
  position:relative;cursor:pointer;background:none !important;border:none !important;
}
.ripple-wrap .rp-tab:hover{color:#fff !important;}
.ripple-wrap .rp-tab.on{color:#fff !important;}
.ripple-wrap .rp-tab.on::after{
  content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;border-radius:3px;
  background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;
}
.ripple-wrap .rp-tab-body{padding:22px 0 70px;}

/* ===== Episode Cards ===== */
.ripple-wrap .rp-ep-rail{display:flex;gap:16px;padding:4px 46px;overflow-x:auto;}
.ripple-wrap .rp-ep-rail.owl-carousel{display:block !important;gap:0 !important;padding:0 40px !important;overflow:visible !important;}
.ripple-wrap .rp-ep-rail.owl-carousel .owl-stage-outer{overflow:hidden;}
.ripple-wrap .rp-ep-rail.owl-carousel .rp-ep-card{width:100% !important;flex:none !important;}
.ripple-wrap .rp-ep-card{flex:0 0 auto;width:100%;cursor:pointer;}
.ripple-wrap .rp-ep-card .rp-ep-th{position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#14173a !important;}
.ripple-wrap .rp-ep-card .rp-ep-th img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/9;}
.ripple-wrap .rp-ep-card:hover .rp-ep-th{outline:2px solid #ff2d78;outline-offset:2px;}
.ripple-wrap .rp-ep-card .rp-ep-play{position:absolute;inset:0;display:grid;place-items:center;font-size:30px;color:#fff !important;opacity:0;transition:.2s;}
.ripple-wrap .rp-ep-card:hover .rp-ep-play{opacity:1;}
.ripple-wrap .rp-ep-card .rp-ep-dur{position:absolute;bottom:8px;right:8px;font-size:11px;background:rgba(0,0,0,.75) !important;padding:3px 7px;border-radius:6px;color:#fff !important;}
.ripple-wrap .rp-ep-card .rp-ep-lbl{padding:9px 2px 0;font-size:14px;font-weight:600;color:#fff !important;}
.ripple-wrap .rp-ep-card .rp-ep-lbl span{color:#7d82a8 !important;font-weight:400;}
.ripple-wrap .rp-ep-card .rp-ep-desc{
  padding:5px 2px 0;font-size:12.5px;line-height:1.45;color:#7d82a8 !important;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
/* ===== Cast Rail ===== */
.ripple-wrap .rp-cast-rail{display:flex;gap:22px;padding:4px 46px;overflow-x:auto;position:relative;}
.ripple-wrap .rp-cast-item{flex:0 0 auto;width:110px;text-align:center;}
.ripple-wrap .rp-cast-item .rp-cast-av{width:110px;height:110px;border-radius:50%;overflow:hidden;margin-bottom:10px;border:2px solid rgba(255,255,255,.16) !important;}
.ripple-wrap .rp-cast-item .rp-cast-av img{width:100%;height:100%;object-fit:cover;}
.ripple-wrap .rp-cast-item span{font-size:13px;color:#d7d9ee !important;}


/* ===== Toast ===== */
.ripple-wrap .rp-toast{
  position:fixed;bottom:30px;left:50%;transform:translateX(-50%) translateY(20px);z-index:200;
  background:rgba(20,23,58,.97) !important;border:1px solid rgba(255,255,255,.16) !important;
  padding:14px 22px;border-radius:12px;font-size:14px;color:#fff !important;
  opacity:0;transition:.3s;pointer-events:none;box-shadow:0 20px 50px rgba(0,0,0,.5);
}
.ripple-wrap .rp-toast.on{opacity:1;transform:translateX(-50%) translateY(0);}

/* ===== Dots (hero carousel) ===== */
.ripple-wrap .rp-dots{display:flex;gap:9px;position:absolute;bottom:26px;left:46px;z-index:4;}
.ripple-wrap .rp-dots i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.3) !important;cursor:pointer;transition:.2s;}
.ripple-wrap .rp-dots i.on{width:26px;border-radius:5px;background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;}



/* ===== Hero Slider ===== */
.ripple-wrap .rp-hero-slider{position:relative;overflow:hidden;}
.ripple-wrap .rp-hero-slide{
  display:none;opacity:0;transition:opacity .6s ease;
}
.ripple-wrap .rp-hero-slide.on{
  display:block;opacity:1;animation:rp-slideFadeIn .6s ease;
}
@keyframes rp-slideFadeIn{from{opacity:0;transform:translateX(20px);}to{opacity:1;transform:none;}}

/* Dots positioned inside slider */
.ripple-wrap .rp-hero-slider .rp-dots{
  position:absolute;bottom:26px;left:46px;z-index:10;display:flex;gap:9px;
}
.ripple-wrap .rp-hero-slider .rp-dots i{
  width:9px;height:9px;border-radius:50%;
  background:rgba(255,255,255,.3) !important;cursor:pointer;transition:.2s;display:block;
}
.ripple-wrap .rp-hero-slider .rp-dots i.on{
  width:26px;border-radius:5px;
  background:linear-gradient(90deg,#ff2d78,#ff6fa8) !important;
}

/* ===== View All / Category head — clickable chevron ===== */
.ripple-wrap .rp-rail-head .rp-chev{
  color:#ff6fa8 !important;display:grid;place-items:center;
  cursor:pointer;width:28px;height:28px;border-radius:50%;
  transition:.15s;
}
.ripple-wrap .rp-rail-head .rp-chev:hover{
  background:rgba(255,255,255,.1) !important;transform:scale(1.1);
}

/* ===== Full-Page Banner Slider (like HLS) ===== */
.ripple-wrap .rp-banner-slider{
  position:relative;width:100%;overflow:hidden;
  margin-bottom:10px;
  visibility:hidden;
}
.ripple-wrap .rp-banner-slider.slick-initialized{
  visibility:visible;
}
.ripple-wrap #rpHomeDynamic .rp-banner-slider{
  visibility:visible;
}
.ripple-wrap .rp-banner-slide{
  position:relative;width:100%;
}
.ripple-wrap .rp-banner-slide.on{
  animation:rp-bannerFade .6s ease;
}
@keyframes rp-bannerFade{from{opacity:0;}to{opacity:1;}}

/* Banner image — full width, 16:9 aspect ratio like HLS */
.ripple-wrap .rp-banner-img{
  position:relative;width:100%;padding-bottom:56.25%;overflow:hidden;
  background:#080a1e !important;
}
.ripple-wrap .rp-banner-img img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
}
.ripple-wrap .rp-banner-img .rp-banner-placeholder{
  position:absolute;inset:0;width:100%;height:100%;
  background:linear-gradient(135deg,#241a52,#0d0f2e) !important;
}
.ripple-wrap .rp-banner-img .rp-banner-gradient{
  position:absolute;inset:0;
      background: linear-gradient(37.41deg, #000037 14.39%, rgba(0, 0, 55, 0.8) 36.77%, rgba(0, 0, 55, 0) 70.1%), linear-gradient(180deg, rgba(0, 0, 55, 0) 59.07%, #000037 86.06%);
  pointer-events:none;
}

/* Banner content overlay — bottom-left (matching content_banner_dt) */
.ripple-wrap .rp-banner-content{
  position:absolute;bottom:33%;left:50px;z-index:99;width:36%;
}
.ripple-wrap .rp-banner-content .rp-banner-icon.bannerSubImg{
  max-height:80px;max-width:280px;margin-bottom:14px;text-align:left;
}
.ripple-wrap .rp-banner-content .rp-banner-icon{
  max-height:80px;max-width:280px;margin-bottom:14px;
}
.ripple-wrap .rp-banner-content .rp-banner-title{
  font-size:42px !important;font-weight:800 !important;line-height:normal !important;
  margin-bottom:0px !important;color:#fff !important;
  text-shadow:0 4px 20px rgba(0,0,0,.7);
}
.ripple-wrap .rp-banner-meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  font-size:13px;color:#a7abce !important;margin-bottom:10px;
}
.ripple-wrap .rp-banner-meta span{color:#a7abce !important;}
.ripple-wrap .rp-banner-meta span:not(:last-child)::after{
  content:'\00B7';margin-left:8px;color:#7d82a8;
}
.ripple-wrap .rp-banner-meta .rp-banner-cert{
  background:rgba(255,255,255,.15) !important;padding:2px 6px;border-radius:4px;
  font-weight:600;font-size:11px;color:#fff !important;
}
.ripple-wrap .rp-banner-desc{
  font-size:15px !important;line-height:24px !important;color:#C0C0C0 !important;padding-top:4px !important;
  margin-bottom:16px !important;padding-top:4px;
  overflow-wrap:break-word;
  display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;
}
.ripple-wrap .rp-banner-btns{display:flex;align-items:center;gap:14px;}

/* Banner dots — bottom center (max 5 visible, Amazon Prime style) */
.ripple-wrap .rp-banner-dots{
  position:absolute;bottom:34%;left:50%;transform:translateX(-50%);z-index:10;
  display:flex;gap:10px;list-style:none;margin:0;padding:0;height:0 !important;
}
.ripple-wrap .rp-banner-dots i{
  width:9px;height:9px;border-radius:50%;display:block;
  background:rgba(255,255,255,.3) !important;cursor:pointer;transition:all 0.3s ease;
}
.ripple-wrap .rp-banner-dots i.on{
  background:#ffffff !important;
}



/* ===== Ripple Detail Page (same banner width as home) ===== */
.ripple-wrap .rp-detail-banner-wrap{
  position:relative;width:100%;overflow:hidden;
}
.ripple-wrap .rp-detail-banner-wrap .rp-banner-img{
  position:relative;width:100%;padding-bottom:56.25%;overflow:hidden;
  background:#080a1e !important;
}
.ripple-wrap .rp-detail-banner-wrap .rp-banner-img img{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
}
.ripple-wrap .rp-detail-banner-wrap .rp-banner-gradient{
  position:absolute;inset:0;
  background:linear-gradient(0deg, #080a1e 0%, rgba(8,10,30,.5) 40%, transparent 70%),
             linear-gradient(90deg, rgba(8,10,30,.7) 0%, transparent 50%) !important;
  pointer-events:none;
}
.ripple-wrap .rp-detail-banner-wrap .rp-hero-back{
  position:absolute;top:24px;left:34px;z-index:5;
}
.ripple-wrap .rp-detail-overlay{
  position:absolute;bottom:30px;left:46px;right:46px;z-index:5;max-width:600px;
}
.ripple-wrap .rp-detail-desc-banner{
  font-size:15px !important;line-height:1.6 !important;color:#cfd2ea !important;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;
}

/* Detail body — meta, genres, tabs, episodes */
.ripple-wrap .rp-detail-body{
  padding:20px 46px 60px;
}
.ripple-wrap .rp-detail-body .rp-detail-meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  font-size:14px;color:#a7abce !important;margin-bottom:12px;
}
.ripple-wrap .rp-detail-body .rp-detail-meta span{color:#a7abce !important;}
.ripple-wrap .rp-detail-body .rp-detail-meta span:not(:last-child)::after{
  content:'\00B7';margin-left:10px;color:#7d82a8;
}
.ripple-wrap .rp-detail-body .rp-detail-meta .rp-imdb{
  background:#e8b34d !important;color:#111 !important;font-weight:800;font-size:11px;
  padding:2px 6px;border-radius:4px;
}
.ripple-wrap .rp-detail-body .rp-detail-meta .rp-imdb::after{display:none;}
.ripple-wrap .rp-detail-body .rp-detail-meta .rp-banner-cert{
  background:rgba(255,255,255,.15) !important;padding:2px 6px;border-radius:4px;
  font-weight:600;font-size:11px;color:#fff !important;
}
.ripple-wrap .rp-detail-body .rp-detail-meta .rp-banner-cert::after{display:none;}
.ripple-wrap .rp-detail-body .rp-detail-genres{
  display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;
}
.ripple-wrap .rp-detail-body .rp-detail-genres span{
  font-size:12px;padding:6px 13px;border-radius:20px;
  background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.10) !important;
  color:#d7d9ee !important;
}
.ripple-wrap .rp-detail-body .rp-tabs{
  display:flex;gap:28px;padding:0;border-bottom:1px solid rgba(255,255,255,.10) !important;
  margin-bottom:20px;
}



/* ===== Banner Navigation Arrows ===== */
.ripple-wrap .rp-banner-arrow{
  position:absolute;bottom:31%;z-index:10;
  width:50px;height:50px;border-radius:100%;
  background:rgba(255,255,255,0.12) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  box-shadow:0 4px 12px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.35), inset 0 -1px 0 rgba(255,255,255,0.08);
  border:none !important;
  display:flex;justify-content:center;align-items:center;cursor:pointer;transition:.15s;
}
.ripple-wrap .rp-banner-arrow:hover{background:rgba(255,255,255,0.2) !important;}
.ripple-wrap .rp-banner-arrow img{width:25px;height:25px;}
.ripple-wrap .rp-banner-prev{right:107px;}
.ripple-wrap .rp-banner-next{right:35px;}

/* ===== Banner Icon (title logo) — matches bannerSubImg ===== */
.ripple-wrap .rp-banner-icon.bannerSubImg{
  max-height:80px;max-width:280px;margin-bottom:14px;
}


/* ===== Slick Slider Override for Banner ===== */
.ripple-wrap .rp-banner-slider.slick-initialized{
  overflow:hidden;
  visibility:visible;
}
.ripple-wrap .rp-banner-slider.slick-initialized .rp-banner-slide{
  display:block !important;
  animation:none !important;
  position:relative !important;
}
.ripple-wrap .rp-banner-slider.slick-initialized .rp-banner-slide.on{
  animation:none !important;
}
.ripple-wrap .rp-banner-slider .slick-list{
  overflow:hidden;
  position:relative;
}
/* Fade mode: slick sets position/opacity/z-index inline — don't override */
.ripple-wrap .rp-banner-slider .slick-track{
  position:relative;
  top:0;left:0;
}
.ripple-wrap .rp-banner-slider .slick-slide{
  float:left;
  height:auto;
}
.ripple-wrap .rp-banner-slider .slick-slide .rp-banner-img{
  width:100%;
  height:0;
  padding-bottom:56.25%;
  position:relative;
  overflow:hidden;
}
.ripple-wrap .rp-banner-slider .slick-dots{
  position:absolute !important;bottom:34% !important;left:50%;transform:translateX(-50%);
  display:flex !important;gap:10px;list-style:none;margin:0;padding:0;z-index:10;
}
.ripple-wrap .rp-banner-slider .slick-dots li{
  margin:0;padding:0;width:auto;height:auto;line-height:0;
}
.ripple-wrap .rp-banner-slider .slick-dots li button{
  width:9px;height:9px;border-radius:50%;padding:0;
  background:rgba(255,255,255,.3) !important;
  border:none !important;font-size:0;line-height:0;color:transparent;cursor:pointer;
  transition:all 0.3s ease;
  -webkit-appearance:none;appearance:none;
}
.ripple-wrap .rp-banner-slider .slick-dots li button:before{
  display:none !important;
}
.ripple-wrap .rp-banner-slider .slick-dots li.slick-active button{
  background:#ffffff !important;
}
/* Slick arrows styled like existing rp-banner-arrow */
.ripple-wrap .rp-banner-slider .slick-arrow{
  position:absolute;bottom:31%;top:auto;z-index:10;
  width:50px;height:50px;border-radius:100%;
  background:rgba(255,255,255,0.12) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  box-shadow:0 4px 12px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.35), inset 0 -1px 0 rgba(255,255,255,0.08);
  border:none !important;
  display:flex !important;justify-content:center;align-items:center;cursor:pointer;transition:.15s;
  font-size:0;color:transparent;
}
.ripple-wrap .rp-banner-slider .slick-arrow:hover{background:rgba(255,255,255,0.2) !important;}
.ripple-wrap .rp-banner-slider .slick-arrow img{width:25px;height:25px;}
.ripple-wrap .rp-banner-slider .slick-next{right:107px;}
.ripple-wrap .rp-banner-slider .slick-prev{right:35px;}

/* ===== Owl Carousel Override for Rails ===== */
.ripple-wrap .rp-rail.owl-carousel{
  display:block !important;
  gap:0 !important;
  padding:0 40px !important;
  overflow:visible !important;
  overflow-x:visible !important;
}
.ripple-wrap .rp-rail.owl-carousel .owl-stage-outer{
  overflow:hidden;
  padding:0;
}
.ripple-wrap .rp-rail.owl-carousel .owl-stage{
  display:flex !important;
}
.ripple-wrap .rp-trending-rail{
  overflow:visible !important;
  background:transparent !important;
}
.ripple-wrap .rp-trending-rail .owl-stage-outer{overflow:visible !important;}
.ripple-wrap .rp-rail.owl-carousel .owl-item{
  flex-shrink:0;
}
.ripple-wrap .rp-rail.owl-carousel .rp-pcard{
  width:100% !important;
  flex:none !important;
}
.ripple-wrap .rp-rail.owl-carousel .rp-pcard .rp-poster{
  width:100% !important;
  height:auto !important;
  aspect-ratio:9/16;
  padding-bottom:inherit !important;
}
.ripple-wrap .rp-trending-sec .rp-rail-head h3{color:#fff !important;}
.ripple-wrap .rp-trending-rail .rp-pcard .rp-poster{overflow:visible !important;}
.ripple-wrap .rp-trending-rail .rp-pcard .rp-toptrendimg{
  position:absolute;left:-34px;bottom:-14px;z-index:0;pointer-events:none;
}
.ripple-wrap .rp-rail.owl-carousel{
  background: transparent !important;
}
.ripple-wrap .rp-trending-rail .rp-pcard .rp-toptrendimg img{
  display:block;height:auto; max-width: 100%;
}
.ripple-wrap .rp-trending-rail .aspect9_16 {
  border-radius: 14px;
}
.ripple-wrap .rp-trending-rail .rp-pcard .rp-poster > img{position:relative;z-index:1;}

.ripple-wrap .rp-trending-rail .rp-pcard .rp-grad {
border-bottom-right-radius: 14px;
    border-bottom-left-radius: 14px;
    z-index:1;
}
.ripple-wrap .rp-trending-rail .rp-pcard .rp-hover-ov {
border-bottom-right-radius: 14px;
    border-bottom-left-radius: 14px;
    border-radius: 14px;
}
@media only screen and (max-width:767px){
  .ripple-wrap .rp-trending-rail{padding:25px 10px !important;}
  .ripple-wrap .rp-trending-rail .rp-toptrendimg{left:-20px;bottom:-12px;}
  .ripple-wrap .rp-trending-rail .rp-toptrendimg img{width:54px;max-height:100px;}
}
.ripple-wrap .rp-rail.owl-carousel .owl-nav button{
  pointer-events:auto;
  width:44px !important;height:44px !important;border-radius:50% !important;
  background:rgba(20,23,58,.9) !important;border:1px solid rgba(255,255,255,.16) !important;
  display:grid !important;place-items:center;color:#fff !important;font-size:22px !important;
  transition:.15s;margin:0 !important;padding:0 !important;
  opacity:0;transition:opacity .2s;
  z-index:21;
  position:relative;
}
.ripple-wrap .rp-rail.owl-carousel:hover .owl-nav button{
  opacity:1;
}
.ripple-wrap .rp-rail.owl-carousel .owl-nav button:hover{
  background:#1b1f49 !important;
}
.ripple-wrap .rp-rail.owl-carousel .owl-nav .disabled{
  display:none !important;
}
.ripple-wrap .rp-rail.owl-carousel .owl-nav button span{
  font-size:28px;line-height:1;
}

.aspect9_16{
  aspect-ratio: 9/16;
}


/* ===== Banner Bottom Section — from custom.css ===== */
.ripple-wrap .rp-detail-content-sec,
.ripple-wrap .rp-rail-sec.banner-bottom-sec {
  margin-top: -210px !important;
  z-index: 1 !important;
  position: relative !important;
}

/* ===== Detail Page Banner Bottom ===== */
.ripple-wrap.rp-detail-page .rp-detail-content-sec{
  position:relative;
}

.ripple-wrap.rp-detail-page .rp-detail-content-sec .banner-bottom-sec .rp-tabs{
  margin-top:0;
}
.ripple-wrap.rp-detail-page .rp-detail-banner-inner{
  padding:0 46px;
}
.ripple-wrap.rp-detail-page .rp-detail-content-sec .banner-bottom-sec .rp-tab-body{
  padding-top:22px;
}


/* ===== Text Clamp & Word Break — all text inside ripple-wrap ===== */
.ripple-wrap p,
.ripple-wrap h1,
.ripple-wrap h2,
.ripple-wrap h3,
.ripple-wrap h4,
.ripple-wrap h5,
.ripple-wrap h6,
.ripple-wrap span,
.ripple-wrap div,
.ripple-wrap button,
.ripple-wrap a{
  word-break:break-word !important;
  overflow-wrap:break-word !important;
}
.ripple-wrap .rp-ptitle,
.ripple-wrap .rp-banner-title,
.ripple-wrap .rp-banner-desc,
.ripple-wrap .rp-hdesc,
.ripple-wrap .rp-ep-desc,
.ripple-wrap .rp-ep-lbl,
.ripple-wrap .rp-detail-desc-banner,
.ripple-wrap .rp-rail-head h3{
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  word-break:break-word !important;
  overflow-wrap:break-word !important;
}
.ripple-wrap .rp-ptitle{-webkit-line-clamp:2 !important;}
.ripple-wrap .rp-banner-title{-webkit-line-clamp:3 !important;}
.ripple-wrap .rp-banner-desc{-webkit-line-clamp:4 !important;}
.ripple-wrap .rp-hdesc{-webkit-line-clamp:4 !important;}
.ripple-wrap .rp-ep-desc{-webkit-line-clamp:2 !important;}
.ripple-wrap .rp-ep-lbl{-webkit-line-clamp:2 !important;}
.ripple-wrap .rp-detail-desc-banner{-webkit-line-clamp:4 !important;}
.ripple-wrap .rp-rail-head h3{-webkit-line-clamp:1 !important;}



.banner_volume.ban-vol-btn img{
  margin: auto;
}


/* ===== Season Dropdown Override for Ripple ===== */
.ripple-wrap .episodeSlection span.select2.select2-container.select2-container--default{
  width:auto !important;
  min-width:140px;
  margin-left:0 !important;
}
.ripple-wrap .episodeSlection .select2-container--default .select2-selection--single{
  background:var(--lang-btn-bg, #1b1f49) !important;
  border:none !important;
  border-radius:50px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.4), inset 0 -1px 0 rgba(255,255,255,0.1), 0 8px 24px rgba(0,0,0,0.25);
}
.rp-detail-content-sec .episodeSlection span.select2.select2-container.select2-container--default {
        margin-left: 0px !important;
}
.rp-detail-content-sec .rp-section-heading{
  margin:10px 0 !important;
}

/* ===== View All Link (Episodes header on detail page) ===== */
.ripple-wrap .rp-viewall-link{
  display:inline-flex;
  align-items:center;
  gap:4px;
  font-size:14px;
  font-weight:600;
  color:#ff6fa8 !important;
  cursor:pointer;
  transition:.15s;
  white-space:nowrap;
}
.ripple-wrap .rp-viewall-link:hover{
  color:#ff2d78 !important;
  transform:translateX(2px);
}
.ripple-wrap .rp-viewall-link img{
  display:inline-block;
}

/* ===== Ripple View All Episodes Page ===== */
.ripple-wrap.rp-viewall-page{
  padding:0 !important;
}
.ripple-wrap.rp-viewall-page .rp-viewall-container{
  max-width:1600px;
  margin:0 auto;
  padding:30px 46px 60px;
}
.ripple-wrap.rp-viewall-page .rp-viewall-header{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:26px;
}
.ripple-wrap.rp-viewall-page .rp-viewall-back{
  width:42px;
  height:42px;
  border-radius:50%;
     background: var(--lang-btn-bg) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.35), inset 0 -1px 0 rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(1px);
    -webkit-backdrop-filter: blur(1px);
  display:grid;
  place-items:center;
  cursor:pointer;
  transition:.15s;
}
.ripple-wrap.rp-viewall-page .rp-viewall-back:hover{
  background:#262a5e !important;
}
.ripple-wrap.rp-viewall-page .rp-viewall-back img{
  width:20px;
  height:20px;
}
.ripple-wrap.rp-viewall-page .rp-viewall-title{
  font-size:26px !important;
  font-weight:700 !important;
  color:#fff !important;
  margin:0 !important;
}

/* Season Tabs */
.ripple-wrap.rp-viewall-page .rp-viewall-seasons{
  margin-bottom:24px;
}
.ripple-wrap.rp-viewall-page .rp-season-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  border:none !important;
}
.ripple-wrap.rp-viewall-page .rp-season-tabs .nav-link{
  padding:9px 22px;
  font-size:14px;
  font-weight:600;
  color:#a7abce !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:50px !important;
  transition:.15s;
}
.ripple-wrap.rp-viewall-page .rp-season-tabs .nav-link:hover{
  color:#fff !important;
  background:rgba(255,255,255,.12) !important;
}
.ripple-wrap.rp-viewall-page .rp-season-tabs .nav-link.active{
  color:#fff !important;
  background:linear-gradient(135deg,#FF73C6,#EC008C) !important;
  border-color:transparent !important;
}

/* Episode List Grid */
.ripple-wrap.rp-viewall-page .rp-ep-list-section{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:24px 18px;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-item{
  cursor:pointer;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-link{
  display:block;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-thumb{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  border-radius:12px;
  overflow:hidden;
  background:#14173a !important;
  transition:.2s;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-item:hover .rp-ep-list-thumb{
  transform:translateY(-4px);
  outline:2px solid #ff2d78;
  outline-offset:2px;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-play{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  font-size:30px;
  color:#fff !important;
  opacity:0;
  transition:.2s;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-item:hover .rp-ep-list-play{
  opacity:1;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-info{
  padding:10px 2px 0;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-title{
  font-size:15px !important;
  font-weight:600 !important;
  color:#fff !important;
  margin:0 0 3px !important;
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-meta{
  font-size:13px;
  color:#7d82a8 !important;
  display:block;
  margin-bottom:4px;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-desc{
  font-size:12.5px !important;
  line-height:1.45 !important;
  color:#7d82a8 !important;
  margin:0 !important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-empty{
  color:#7d82a8 !important;
  padding:20px 0;
}
.ripple-wrap.rp-viewall-page .rp-ep-list-loading{
  text-align:center;
  padding:24px 0;
}
.rp-trending-rail .owl-item{
      padding: 10px 20px;
    margin: 0 12px !important;
}
/* Responsive */
@media only screen and (max-width:1199px){
  .ripple-wrap.rp-viewall-page .rp-ep-list-section{grid-template-columns:repeat(3, 1fr);}
}
@media only screen and (max-width:767px){
  .ripple-wrap.rp-viewall-page .rp-viewall-container{padding:20px 16px 50px;}
  .ripple-wrap.rp-viewall-page .rp-ep-list-section{grid-template-columns:repeat(2, 1fr);gap:16px 12px;}
  .ripple-wrap.rp-viewall-page .rp-viewall-title{font-size:20px !important;}
}
@media only screen and (max-width:400px){
  .ripple-wrap.rp-viewall-page .rp-ep-list-section{grid-template-columns:1fr;}
}

/* Native season dropdown for ripple detail (no select2 — works with back navigation) */
.ripple-wrap .rp-season-dropdown{
  display:inline-block;
}
.ripple-wrap .rp-native-season-select{
  background:#1b1f49;
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  border-radius:50px;
  padding:10px 36px 10px 18px;
  font-size:14px;
  font-weight:600;
  outline:none;
  cursor:pointer;
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  background-size:12px;
  min-width:140px;
}
.ripple-wrap .rp-native-season-select:focus{
  border-color:#ec008c;
}
.ripple-wrap .rp-native-season-select option{
  background:#1b1f49;
  color:#fff;
  padding:8px;
}

/* ===================================================================
   RIPPLE ADVERTISEMENT SECTION
   Mirrors the dashboard advertisement UI (advertice_section1 / advertice_card)
   including its responsive behaviour so ripple ads match the home page.
   Layout: image stacked on top (col-md-12), body below (col-md-12).
   On mobile the body becomes a compact horizontal bar (text | CTA).
   =================================================================== */
.ripple-wrap .advertice_section1.rp-ad-sec{
  padding: 20px 46px !important;
}
.ripple-wrap .advertice_section1.rp-ad-sec.banner-bottom-sec{
  margin-top: 2px !important;
}
.ripple-wrap .card.advertice_card.rp-ad-card{
  background: transparent !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  border-radius: 12px;
  overflow: hidden;
}
/* Always visible. Before Owl initializes, show only the first .item so
   multiple ads don't stack vertically; Owl takes over once loaded. */
.ripple-wrap .advertice_card.rp-ad-card{
  display: block;
}
.ripple-wrap .advertice_card.rp-ad-card:not(.owl-loaded) > .item ~ .item{
  display: none;
}
.ripple-wrap .rp-ad-card .add_img.rp-ad-img{
  position: relative;
  width: 100%;
  border-radius: 12px 12px 0 0;
  overflow: hidden;
}
.ripple-wrap .rp-ad-card .add_img.rp-ad-img img{
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px 12px 0 0;
}
.ripple-wrap .rp-ad-card .add_body{
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  border-radius: 0 0 12px 12px;
}
.ripple-wrap .rp-ad-card .add_body.add_body_download{
  padding: 1.5rem 3rem !important;
  background: linear-gradient(to right, rgba(4,5,5,0.46) 0%, rgba(86,107,107,0.45) 100%) !important;
}
.ripple-wrap .rp-ad-card .add_text .add_p{
  margin: 0 0 4px;
  font-size: 15px;
  color: rgba(255,255,255,0.5);
}
.ripple-wrap .rp-ad-card .add_text .add_h4{
  margin: 0;
  font-size: 1.5rem;
  font-weight: 600;
  color: #fff;
}
.ripple-wrap .rp-ad-card .add_btn{
  margin-top: 14px;
}
.ripple-wrap .rp-ad-card .add_visit_btn{
  display: inline-block;
  color: rgba(255,255,255,1);
  background: rgba(255,255,255,0.25) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border-radius: 30px;
  padding: 0.6rem 3rem;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.35), inset 0 -1px 0 rgba(255,255,255,0.08);
  transition: background .2s ease;
}
.ripple-wrap .rp-ad-card .add_visit_btn:hover{
  background: rgba(255,255,255,0.16) !important;
}
.ripple-wrap .rp-ad-card.owl-carousel .owl-stage-outer{
  overflow: hidden !important;
}
/* .rp-watchlist-btn{
  display:none !important;
} */
/* .rpe-ctrls .rpe-wl-btn{
   display:none !important;
} */
/* ── Large desktops: match dashboard tapering section padding ── */
@media only screen and (min-width: 1025px) and (max-width: 1600px){
  .ripple-wrap .advertice_section1.rp-ad-sec{
    padding: 20px 40px !important;
  }
}

/* ── Tablet ── */
@media only screen and (min-width: 768px) and (max-width: 1024px){
  .ripple-wrap .advertice_section1.rp-ad-sec{
    padding: 20px 28px !important;
  }
  .ripple-wrap .rp-ad-card .add_body.add_body_download{
    padding: 1.25rem 2rem !important;
  }
  .ripple-wrap .rp-ad-card .add_text .add_h4{
    font-size: 1.3rem;
  }
  .ripple-wrap .rp-ad-card .add_visit_btn{
    padding: 0.5rem 2rem;
    font-size: 15px;
  }
}

/* ── Mobile: compact horizontal body bar (same as dashboard ≤767px) ── */
@media only screen and (max-width: 767px){
  .ripple-wrap .advertice_section1.rp-ad-sec{
    padding: 15px 12px !important;
  }
  .ripple-wrap .rp-ad-card .add_body{
    flex-direction: row !important;
    align-items: center;
    gap: 8px;
    justify-content: space-between !important;
  }
  .ripple-wrap .rp-ad-card .add_body.add_body_download{
    padding: 10px !important;
  }
  /* text anchor takes the remaining space, CTA stays on the right */
  .ripple-wrap .rp-ad-card .add_body > .adsclick{
    min-width: 0;
    flex: 1 1 auto;
  }
  .ripple-wrap .rp-ad-card .add_text{
    min-width: 0;
  }
  .ripple-wrap .rp-ad-card .add_text .add_p{
    margin-bottom: 0 !important;
    line-height: normal !important;
    font-size: 13px !important;
  }
  .ripple-wrap .rp-ad-card .add_text .add_h4{
    font-size: 13px;
    line-height: normal;
  }
  .ripple-wrap .rp-ad-card .add_btn{
    margin-top: 0;
    flex-shrink: 0;
  }
  .ripple-wrap .rp-ad-card .add_visit_btn{
    white-space: nowrap;
    padding: 0.3rem 1.5rem !important;
    font-size: 12px;
    border-radius: 30px;
  }
}

/* ── Small phones ── */
@media only screen and (max-width: 400px){
  .ripple-wrap .advertice_section1.rp-ad-sec{
    padding: 12px 8px !important;
  }
  .ripple-wrap .rp-ad-card .add_text .add_p{
    font-size: 11px !important;
  }
  .ripple-wrap .rp-ad-card .add_text .add_h4{
    font-size: 12px;
  }
  .ripple-wrap .rp-ad-card .add_visit_btn{
    padding: 0.3rem 1rem !important;
    font-size: 11px;
  }
}

/* My Watchlist Ripple tab and card controls */
/* #rippleWatchlistView{display:none;} */
body.mywatchlist-ripple-active #watchList,
body.mywatchlist-ripple-active #shimmer-section,
body.mywatchlist-ripple-active .global-top-trending-section{display:none !important;}
body.mywatchlist-ripple-active #rippleWatchlistView{display:block;}
body.mywatchlist-ripple-active #rippleWatchlistView .rp-viewall-container{display:block;}
#rippleWatchlistView .rp-type-tag{display:none !important;}
#rippleWatchlistView .mywl-ripple-remove-btn{
  position:absolute !important;
  top:9px !important;
  right:9px !important;
  z-index:40 !important;
  width:32px !important;
  height:32px !important;
  display:grid !important;
  place-items:center;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.35) !important;
  border-radius:50% !important;
  color:#fff !important;
  background:rgba(9,10,30,.78) !important;
  opacity:1 !important;
  visibility:visible !important;
  cursor:pointer !important;
  display:none !important;
}
#rippleWatchlistView .ripple-wrap .rp-pcard:hover .mywl-ripple-remove-btn{
  display:grid !important;
}
#rippleWatchlistView .mywl-ripple-remove-btn:hover{background:#ec008c !important;}
#rippleWatchlistView .mywl-ripple-remove-btn svg{width:16px;height:16px;}
.search_filletr_tags .search_filter_btn[data-watchlist-filter]{cursor:pointer;}
