/* Additional detail-page components matching the Pobreflix redesign in the root ZIP. */
.pc-hero-title-logo { line-height:0; }
.pc-hero-logo { display:block; width:auto; max-width:min(100%,520px); max-height:clamp(64px,10vw,118px); object-fit:contain; object-position:left center; filter:drop-shadow(0 4px 14px rgba(0,0,0,.62)); -webkit-touch-callout:none; -webkit-user-select:none; user-select:none; -webkit-user-drag:none; }

html, body { min-height:100%; margin:0; }
body { background:#050505; color:#f8f8f8; }
#ipsLayout_header { width:100%; }
.pc-detail-page { padding-bottom: 76px !important; }
.pc-detail-content { width: min(1400px, 100%); margin: 0 auto; padding: 34px clamp(18px, 4vw, 48px) 0; }
.pc-section-heading { display:flex; align-items:center; gap:12px; min-width:0; }
.pc-section-heading h2 { margin:0; color:#fff; font-size:clamp(23px,3vw,34px); line-height:1.12; font-weight:900; letter-spacing:-.025em; }
.pc-heading-accent { display:block; flex:0 0 5px; height:30px; border-radius:8px; background:#ff6417; }
.pc-info-panel { margin:0 auto 38px; padding:24px 26px; border:1px solid rgba(255,255,255,.08); border-radius:16px; background:linear-gradient(135deg,rgba(22,22,22,.96),rgba(10,10,10,.98)); }
.pc-info-panel .pc-section-heading { margin-bottom:17px; }
.pc-info-overview { color:#c9c9c9; font-size:15px; line-height:1.7; margin:0; max-width:1000px; }
.pc-info-facts { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.pc-info-facts span { display:flex; flex-direction:column; gap:4px; min-width:120px; padding:10px 13px; border:1px solid rgba(255,255,255,.08); border-radius:10px; background:rgba(255,255,255,.035); color:#e8e8e8; font-size:13px; }
.pc-info-facts b { color:#858585; font-size:10px; letter-spacing:.11em; text-transform:uppercase; }
.pc-episodes-section { margin:0 auto 42px; scroll-margin-top:24px; }
.pc-episodes-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 18px; }
.pc-season-dropdown { position:relative; z-index:20; width:min(260px,100%); min-width:190px; }
.pc-season-trigger { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; min-height:48px; padding:0 15px; border:1px solid rgba(255,255,255,.16); border-radius:10px; color:#fff; background:#161616; font-family:inherit; font-size:14px; font-weight:700; line-height:1; text-align:left; cursor:pointer; transition:border-color .18s ease,background .18s ease,box-shadow .18s ease; }
.pc-season-trigger:hover,.pc-season-dropdown.is-open .pc-season-trigger { border-color:rgba(255,100,23,.72); background:#1b1b1b; }
.pc-season-trigger:focus-visible,.pc-season-option:focus-visible { outline:2px solid #ff6417; outline-offset:2px; }
.pc-season-trigger svg { flex:0 0 17px; width:17px; height:17px; color:#aaa; transition:transform .2s ease,color .2s ease; }
.pc-season-dropdown.is-open .pc-season-trigger svg { color:#ff9a68; transform:rotate(180deg); }
.pc-season-trigger:disabled { opacity:.55; cursor:not-allowed; }
.pc-season-menu { position:absolute; top:calc(100% + 8px); left:0; right:0; z-index:60; display:flex; flex-direction:column; gap:4px; max-height:min(320px,50vh); overflow:auto; padding:6px; border:1px solid rgba(255,255,255,.12); border-radius:12px; background:#151515; box-shadow:none!important; filter:none!important; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-8px) scale(.98); transform-origin:top center; transition:opacity .18s ease,transform .2s ease,visibility 0s linear .2s; }
.pc-season-dropdown.is-open .pc-season-menu { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0) scale(1); transition:opacity .18s ease,transform .2s ease,visibility 0s; }
.pc-season-option { display:flex; align-items:center; width:100%; min-height:42px; padding:0 12px; border:0; border-radius:8px; color:#dedede; background:transparent; font-family:inherit; font-size:14px; font-weight:600; line-height:1.2; text-align:left; cursor:pointer; transition:color .15s ease,background .15s ease; }
.pc-season-option:hover { color:#fff; background:#242424; }
.pc-season-option[aria-selected="true"] { color:#fff; background:#2a1b13; box-shadow:inset 3px 0 #ff6417; }
.pc-episode-rows { display:flex; flex-direction:column; gap:7px; }
.pc-ep-row { display:flex; align-items:stretch; gap:16px; padding:12px; border:1px solid transparent; border-radius:12px; background:transparent; transition:background .18s ease,border-color .18s ease; }
.pc-ep-row:hover { border-color:rgba(255,100,23,.48); background:rgba(255,100,23,.055); }
.pc-ep-row-thumb { position:relative; flex:0 0 clamp(135px,18vw,245px); aspect-ratio:16/9; overflow:hidden; border-radius:9px; background:#111; }
.pc-ep-row-thumb img { width:100%; height:100%; display:block; object-fit:cover; }
.pc-ep-row-play { position:absolute; inset:0; display:grid; place-items:center; color:#fff; font-size:26px; background:rgba(0,0,0,.24); opacity:0; transition:opacity .16s ease; }
.pc-ep-row:hover .pc-ep-row-play { opacity:1; }
.pc-ep-row-info { flex:1 1 auto; min-width:0; display:flex; flex-direction:column; justify-content:center; gap:6px; }
.pc-ep-row-title { margin:0; color:#fff; font-size:16px; font-weight:800; line-height:1.35; }
.pc-ep-row-num { color:#ff6417; font-weight:900; }
.pc-ep-row-overview { display:-webkit-box; margin:0; overflow:hidden; color:#a4a4a4; font-size:13px; line-height:1.5; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.pc-ep-row-actions { margin-top:3px; }
.pc-ep-row-watch { display:inline-flex; align-items:center; justify-content:center; min-height:35px; padding:0 16px; border-radius:8px; color:#fff; background:#252525; font-size:12px; font-weight:800; text-decoration:none; transition:background .15s,color .15s; }
.pc-ep-row-watch:hover { color:#111; background:#ff6417; }
.pc-ep-row-runtime { align-self:center; padding-left:10px; white-space:nowrap; color:#858585; font-size:12px; font-weight:700; }
.pc-related-section { margin:0 auto 14px; }
.pc-related-section .pc-section-heading { margin-bottom:18px; }
.pc-related-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:15px; }
.pc-related-card { min-width:0; overflow:hidden; border:1px solid rgba(255,255,255,.08); border-radius:12px; background:#111; color:#fff; text-decoration:none; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.pc-related-card:hover { transform:translateY(-3px); border-color:rgba(255,100,23,.6); box-shadow:0 12px 28px rgba(0,0,0,.28); }
.pc-related-poster { position:relative; aspect-ratio:2/3; overflow:hidden; background:#171717; }
.pc-related-poster img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .28s ease; }
.pc-related-card:hover .pc-related-poster img { transform:scale(1.04); }
.pc-related-badge { position:absolute; left:8px; top:8px; padding:5px 7px; border:1px solid rgba(255,255,255,.16); border-radius:6px; background:rgba(0,0,0,.72); color:#fff; font-size:9px; font-weight:800; letter-spacing:.06em; }
.pc-related-caption { padding:10px 11px 12px; }
.pc-related-caption h3 { margin:0; overflow:hidden; color:#f5f5f5; font-size:13px; font-weight:800; line-height:1.35; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.pc-related-caption p { margin:5px 0 0; color:#898989; font-size:11px; }
.pc-loading,.pc-empty { margin:0; padding:22px 0; color:#929292; font-size:14px; }
.pc-primary-action.is-disabled { opacity:.55; pointer-events:none; }
.pc-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:1100px) { .pc-related-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media (max-width:700px) {
  .pc-detail-content { padding:25px 20px 0; }
  .pc-episodes-heading { align-items:flex-start; flex-direction:column; gap:13px; }
  .pc-season-dropdown { width:100%; }
  .pc-ep-row { gap:11px; padding:9px 4px; }
  .pc-ep-row-thumb { flex-basis:clamp(110px,34vw,155px); border-radius:8px; }
  .pc-ep-row-title { font-size:13px; }
  .pc-ep-row-overview { font-size:11px; -webkit-line-clamp:2; }
  .pc-ep-row-runtime { display:none; }
  .pc-ep-row-watch { min-height:32px; padding:0 12px; font-size:11px; }
  .pc-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .pc-info-panel { padding:18px 16px; margin-bottom:30px; }
  .pc-info-facts span { min-width:calc(50% - 6px); flex:1; }
}
