/* ===== Shared Grid & Cards ===== */
.hp-pf-grid{
  --gap:18px; --radius:14px; --bg:#0b0b0b; --border:rgba(255,255,255,.12);
  --shadow:0 8px 24px rgba(0,0,0,.35); --shadow-hover:0 16px 40px rgba(0,0,0,.48);
  display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:var(--gap);
}
/* Force 4 columns in tabs */
.hp-grid-4{ grid-template-columns:repeat(4, 1fr) !important; }
@media (max-width: 1200px){
  .hp-grid-4{ grid-template-columns:repeat(3, 1fr) !important; }
}
@media (max-width: 900px){
  .hp-grid-4{ grid-template-columns:repeat(2, 1fr) !important; }
}
@media (max-width: 520px){
  .hp-grid-4{ grid-template-columns:1fr !important; }
}

.hp-pf-grid .hp-card{ position:relative; display:block; overflow:hidden; border-radius:var(--radius); background:var(--bg); border:1px solid var(--border); box-shadow:var(--shadow); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.hp-pf-grid .hp-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-hover); border-color:rgba(255,255,255,.2); }
.hp-pf-grid .hp-thumb-wrap{ position:relative; aspect-ratio:2/3; background:#111; isolation:isolate; }
.hp-pf-grid .hp-thumb-wrap img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .35s ease, filter .35s ease; filter:contrast(1.05) brightness(.98); }
.hp-pf-grid .hp-card:hover .hp-thumb-wrap img{ transform:scale(1.035); filter:contrast(1.08) brightness(1); }
.hp-pf-grid .hp-thumb-wrap::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:42%; background:linear-gradient(to top, rgba(0,0,0,.86), rgba(0,0,0,.55) 55%, rgba(0,0,0,0)); z-index:1; }
.hp-pf-grid .hp-card-title{ position:absolute; left:12px; right:12px; bottom:12px; margin:0; z-index:2; color:#fff; text-shadow:0 2px 6px rgba(0,0,0,.6); font:700 clamp(14px,2.2vw,18px)/1.28 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.hp-pf-grid .hp-pf-overlay-link{ position:absolute; inset:0; z-index:2; display:block; }
.hp-pf-grid .hp-pf-play{ position:absolute; inset:auto 50% 50% auto; transform:translate(50%,50%) scale(.9); z-index:3; width:66px; height:66px; border-radius:999px; border:2px solid rgba(255,255,255,.9); background:rgba(0,0,0,.28); backdrop-filter:blur(2px); display:grid; place-items:center; opacity:0; transition:opacity .22s ease, transform .22s ease, background .22s ease, border-color .22s ease; }
.hp-pf-grid .hp-card:hover .hp-pf-play{ opacity:1; transform:translate(50%,50%) scale(1); }
.hp-pf-grid .hp-pf-play:hover{ background:rgba(0,0,0,.4); border-color:#fff; }
.hp-pf-grid .hp-pf-icon{ width:0; height:0; margin-left:3px; border-top:12px solid transparent; border-bottom:12px solid transparent; border-left:18px solid #fff; }

/* ===== Tabs ===== */
.hp-pf-tabs{ --bar-bg:#0e0e0e; --bar-b:#2a2a2a; --tab:#cfcfcf; --tab-active:#fff; }
.hp-pf-tabs .hp-tabs-bar{ display:flex; align-items:center; gap:8px; padding:10px; border-radius:12px; background:var(--bar-bg); border:1px solid var(--bar-b); margin-bottom:12px; overflow:auto; }
.hp-pf-tabs .hp-tab{ appearance:none; background:transparent; color:var(--tab); border:1px solid transparent; border-radius:999px; padding:8px 14px; font:600 14px/1 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; cursor:pointer; white-space:nowrap; }
.hp-pf-tabs .hp-tab.is-active{ background:#1a1a1a; color:var(--tab-active); border-color:#3a3a3a; }
.hp-pf-tabs .hp-tab:hover{ background:#151515; color:#fff; }
.hp-pf-tabs .hp-tab:focus{ outline:2px solid #fff; outline-offset:2px; }
.hp-pf-tabs .hp-tab-panel{ display:none; }
.hp-pf-tabs .hp-tab-panel.is-active{ display:block; }

/* ===== Modals (unchanged) ===== */
.hp-pf-modal{ position:fixed; inset:0; background:rgba(0,0,0,.78); display:none; align-items:center; justify-content:center; padding:24px; z-index:999999; }
.hp-pf-modal.is-open{ display:flex; }
.hp-pf-dialog{ background:#0c0c0c; border-radius:16px; width:min(720px, 92vw); position:relative; overflow:hidden; box-shadow:0 10px 30px rgba(0,0,0,.5); }
.hp-pf-close{ position:absolute; top:8px; right:8px; width:36px; height:36px; border-radius:999px; border:none; background:rgba(255,255,255,.12); color:#fff; font-size:22px; line-height:1; cursor:pointer; z-index:3; }
.hp-pf-close:hover{ background:rgba(255,255,255,.2); }
.hp-pf-choice{ padding:26px 20px; color:#fff; text-align:center; }
.hp-pf-choice-title{ margin:6px 0 16px; font:700 20px/1.3 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; }
.hp-pf-actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.hp-pf-action{ appearance:none; display:inline-flex; align-items:center; justify-content:center; min-width:160px; padding:12px 16px; border-radius:999px; font:600 14px/1 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; text-decoration:none; cursor:pointer; transition:transform .15s ease, background .2s ease, border-color .2s ease, color .2s ease; }
.hp-pf-watch-trailer{ background:#ffffff; color:#111; border:1px solid #fff; }
.hp-pf-watch-trailer:hover{ transform:translateY(-1px); background:#f5f5f5; }
.hp-pf-watch-film{ background:transparent; color:#fff; border:1px solid rgba(255,255,255,.5); }
.hp-pf-watch-film:hover{ transform:translateY(-1px); background:rgba(255,255,255,.08); border-color:#fff; }
.hp-pf-frame-wrap{ width:min(960px,92vw); aspect-ratio:16/9; display:none; }
.hp-pf-frame-wrap iframe{ width:100%; height:100%; display:block; border:0; }

/* ===== Daily Modal ===== */
.hp-pf-daily{ position:fixed; inset:0; background:rgba(0,0,0,.82); display:none; align-items:center; justify-content:center; padding:24px; z-index:999999; }
.hp-pf-daily.is-open{ display:flex; }
.hp-pf-daily-dialog{ background:#0c0c0c; border-radius:18px; width:min(860px, 95vw); display:grid; grid-template-columns:1fr 1.2fr; gap:0; overflow:hidden; box-shadow:0 10px 34px rgba(0,0,0,.6); position:relative; }
.hp-pf-daily-close{ position:absolute; top:10px; right:10px; width:38px; height:38px; border-radius:999px; border:none; background:rgba(255,255,255,.12); color:#fff; font-size:22px; cursor:pointer; z-index:3; }
.hp-pf-daily-close:hover{ background:rgba(255,255,255,.2); }
.hp-pf-daily-media{ position:relative; background:#111; min-height:260px; }
.hp-pf-daily-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.hp-pf-daily-body{ padding:22px 22px; color:#fff; display:flex; flex-direction:column; justify-content:center; gap:10px; }
.hp-pf-daily-kicker{ font:700 12px/1.2 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; letter-spacing:.12em; text-transform:uppercase; color:#bbb; }
.hp-pf-daily-title{ margin:0; font:800 clamp(18px, 2.6vw, 26px)/1.2 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; }
.hp-pf-daily-excerpt{ margin:6px 0 0; font:400 14px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; color:#d9d9d9; }
.hp-pf-daily-actions{ display:flex; gap:10px; margin-top:14px; }
.hp-pf-daily-watch{ display:inline-flex; align-items:center; justify-content:center; min-width:140px; padding:12px 16px; border-radius:999px; background:#fff; color:#111; border:1px solid #fff; font:700 14px/1 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; text-decoration:none; }
.hp-pf-daily-watch:hover{ background:#f5f5f5; }
.hp-pf-daily-close-2{ display:inline-flex; align-items:center; justify-content:center; min-width:120px; padding:12px 16px; border-radius:999px; background:transparent; color:#fff; border:1px solid rgba(255,255,255,.5); font:600 14px/1 system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Helvetica Neue",sans-serif; cursor:pointer; }
.hp-pf-daily-close-2:hover{ background:rgba(255,255,255,.08); border-color:#fff; }
@media (max-width:780px){
  .hp-pf-daily-dialog{ grid-template-columns:1fr; }
  .hp-pf-daily-media{ aspect-ratio:16/9; }
}
