:root{--accent:#e50914;--accent2:#ff2a2a;--bg:#050505;--text:#fff;--muted:rgba(255,255,255,.72);--shadow:0 30px 120px rgba(0,0,0,.80);--shadow2:0 18px 55px rgba(0,0,0,.60);--radius2:26px;--padX:56px;--safeTop:env(safe-area-inset-top,0px);--safeBottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:Arial,sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden;padding-bottom:var(--safeBottom)}.bg-vignette{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 50% 15%,rgba(255,255,255,.06),transparent 52%),radial-gradient(ellipse at center,transparent 45%,rgba(0,0,0,.86) 100%);opacity:.75}.grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E");mix-blend-mode:overlay}.layer{position:relative;z-index:2}.nav{position:sticky;top:0;padding-top:var(--safeTop);z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:14px var(--padX);background:rgba(0,0,0,.62);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(12px);gap:16px;flex-wrap:wrap}.nav-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1 1 auto}.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.6px;text-transform:uppercase;color:var(--accent);user-select:none;white-space:nowrap}.brand .dot{width:10px;height:10px;border-radius:999px;background:var(--accent);box-shadow:0 0 18px rgba(229,9,20,.45);animation:dotPulse 2.8s ease-in-out infinite}@keyframes dotPulse{0%,100%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.25);filter:brightness(1.2)}}.menu{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.menu a{text-decoration:none;color:rgba(255,255,255,.78);font-weight:900;font-size:13px;letter-spacing:.2px;padding:10px 10px;border-radius:999px;border:1px solid transparent;transition:transform .16s ease,background .16s ease,border-color .16s ease,color .16s ease;position:relative;overflow:hidden}.menu a::after{content:"";position:absolute;top:-20%;left:-60%;width:50%;height:140%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.14),transparent);opacity:0}.menu a:hover{transform:translateY(-1px);color:#fff;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.10)}.menu a:hover::after{opacity:1;animation:shine 900ms ease}.menu a.active{color:#fff;background:rgba(229,9,20,.14);border-color:rgba(229,9,20,.25)}.hamburger{display:none;width:44px;height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;cursor:pointer;align-items:center;justify-content:center;user-select:none;transition:transform .16s ease,filter .16s ease,border-color .16s ease;flex:0 0 auto}.hamburger:hover{transform:translateY(-1px);filter:brightness(1.06);border-color:rgba(229,9,20,.28)}.hamburger svg{width:22px;height:22px}.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);z-index:4000;opacity:0;pointer-events:none;transition:opacity .18s ease}.drawer-backdrop.show{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;left:0;width:min(86vw,360px);height:100%;padding:calc(14px + var(--safeTop)) 14px 14px;background:rgba(0,0,0,.82);border-right:1px solid rgba(255,255,255,.10);box-shadow:0 28px 120px rgba(0,0,0,.85);z-index:4500;transform:translateX(-102%);transition:transform .22s ease}.drawer.show{transform:translateX(0)}.drawer .dhead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 8px 12px;border-bottom:1px solid rgba(255,255,255,.10);margin-bottom:12px}.drawer .dtitle{font-weight:900;letter-spacing:.4px;color:#fff}.drawer .close{width:42px;height:42px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;cursor:pointer}.drawer nav{display:flex;flex-direction:column;gap:10px;padding:10px 6px}.drawer a{text-decoration:none;color:rgba(255,255,255,.92);font-weight:900;font-size:14px;padding:12px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.05);transition:transform .16s ease,filter .16s ease,border-color .16s ease}.drawer a:hover{transform:translateY(-1px);filter:brightness(1.06);border-color:rgba(229,9,20,.25)}.drawer a.active{background:rgba(229,9,20,.14);border-color:rgba(229,9,20,.25)}.nav-right{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex:1 1 520px;min-width:0}.search{position:relative;width:min(580px,52vw);min-width:180px;flex:1 1 auto}.search input{width:100%;padding:12px 44px 12px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;outline:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.search input:focus{border-color:rgba(229,9,20,.35);box-shadow:0 0 0 4px rgba(229,9,20,.12);transform:translateY(-1px);background:rgba(255,255,255,.075)}.search .icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);opacity:.85;pointer-events:none}.pill{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:rgba(255,255,255,.86);font-weight:800;font-size:12px;white-space:nowrap;flex:0 0 auto}.auth{display:flex;gap:10px;align-items:center;position:relative;flex:0 0 auto}.auth a{text-decoration:none;display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:rgba(255,255,255,.90);font-weight:900;font-size:12px;white-space:nowrap;transition:transform .16s ease,filter .16s ease,border-color .16s ease}.auth a:hover{transform:translateY(-1px);filter:brightness(1.06);border-color:rgba(229,9,20,.28)}.auth a.primary{background:linear-gradient(135deg,rgba(229,9,20,.95),rgba(170,0,0,.95));border-color:rgba(255,255,255,.10);box-shadow:0 12px 35px rgba(229,9,20,.18)}.avatar-btn{display:inline-flex;align-items:center;gap:10px;padding:10px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:rgba(255,255,255,.92);font-weight:900;font-size:12px;cursor:pointer;user-select:none;transition:transform .16s ease,filter .16s ease,border-color .16s ease;white-space:nowrap}.avatar-btn:hover{transform:translateY(-1px);filter:brightness(1.06);border-color:rgba(229,9,20,.28)}.avatar-img{width:22px;height:22px;border-radius:8px;object-fit:cover;display:block;border:1px solid rgba(255,255,255,.14);box-shadow:0 10px 25px rgba(229,9,20,.12)}.dd{position:absolute;top:calc(100% + 10px);right:0;min-width:240px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.72);backdrop-filter:blur(14px);box-shadow:0 28px 90px rgba(0,0,0,.75);overflow:hidden;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .16s ease,transform .16s ease;z-index:2000}.dd.show{opacity:1;transform:translateY(0);pointer-events:auto}.dd .head{padding:12px 12px 10px;border-bottom:1px solid rgba(255,255,255,.10)}.dd .name{font-weight:900;font-size:13px}.dd .sub{margin-top:6px;color:rgba(255,255,255,.68);font-weight:800;font-size:12px}.dd a{display:flex;width:100%;padding:12px 12px;border-radius:0;border:0;background:transparent;color:rgba(255,255,255,.90);font-weight:900;font-size:12px;justify-content:flex-start;gap:10px;transition:background .16s ease}.dd a:hover{transform:none;background:rgba(255,255,255,.06);border-color:transparent;filter:none}.dd a.logout{color:#fff;background:rgba(229,9,20,.10);border-top:1px solid rgba(229,9,20,.18)}.dd a.logout:hover{background:rgba(229,9,20,.16)}.hero{position:relative;min-height:82vh;padding:34px 0 26px;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:-3;background-image:radial-gradient(circle at 20% 18%,rgba(229,9,20,.18),transparent 44%),radial-gradient(circle at 85% 14%,rgba(255,255,255,.08),transparent 46%),linear-gradient(to bottom,rgba(0,0,0,.10),rgba(0,0,0,.92)),url("<?= $hero ? h(($hero["hero_bg_url"] ?:$hero["poster_url"]) ?? ""):"" ?>");background-size:cover;background-position:center;filter:blur(10px) saturate(1.06) contrast(1.06);transform:scale(1.08);opacity:.96}.hero-sheen{position:absolute;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 15% 20%,rgba(255,255,255,.10),transparent 55%),radial-gradient(circle at 60% 30%,rgba(229,9,20,.08),transparent 60%),linear-gradient(to right,rgba(0,0,0,.76),rgba(0,0,0,.30) 52%,rgba(0,0,0,.84));opacity:.9}.hero-inner{width:100%;padding:0 var(--padX);display:grid;grid-template-columns:1.22fr .78fr;gap:28px;align-items:start}.hero-left{position:relative;padding:26px;border-radius:var(--radius2);background:rgba(0,0,0,.44);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(12px);box-shadow:var(--shadow);overflow:hidden;transform:translateZ(0)}.hero-left::before{content:"";position:absolute;inset:-2px;background:radial-gradient(circle at 14% 18%,rgba(229,9,20,.34),transparent 46%),radial-gradient(circle at 84% 14%,rgba(255,255,255,.10),transparent 46%),radial-gradient(circle at 76% 90%,rgba(229,9,20,.16),transparent 58%);filter:blur(18px);opacity:.70;z-index:0;pointer-events:none}.hero-left>*{position:relative;z-index:1}.tag{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;background:rgba(229,9,20,.16);border:1px solid rgba(229,9,20,.28);color:#fff;font-weight:900;font-size:12px;letter-spacing:.35px;margin-bottom:12px;width:fit-content}.tag .pulse{width:8px;height:8px;border-radius:999px;background:var(--accent);box-shadow:0 0 16px rgba(229,9,20,.55);animation:livePulse 1.6s ease-in-out infinite}@keyframes livePulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.7);opacity:.65}}.hero-title{font-size:clamp(30px,4.35vw,70px);font-weight:900;line-height:1.03;margin:6px 0 10px;text-shadow:0 22px 80px rgba(0,0,0,.84);letter-spacing:.2px;word-break:break-word}.chips{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 14px}.chip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);font-size:12px;font-weight:900;color:rgba(255,255,255,.88)}.chip .imdb{background:#f5c518;color:#000;padding:3px 7px;border-radius:6px;font-weight:900;font-size:12px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:10px 0 14px}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;font-weight:900;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,filter .16s ease;overflow:hidden;user-select:none;white-space:nowrap}.btn svg{width:18px;height:18px}.btn::after{content:"";position:absolute;top:-20%;left:-60%;width:50%;height:140%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);opacity:0}.btn:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.22);box-shadow:0 18px 55px rgba(0,0,0,.65);filter:brightness(1.06)}.btn:hover::after{opacity:1;animation:shine 900ms ease}.btn:active{transform:translateY(0) scale(.99)}.btn-primary{background:linear-gradient(135deg,rgba(229,9,20,.96),rgba(170,0,0,.96));border-color:rgba(255,255,255,.12);box-shadow:0 18px 55px rgba(229,9,20,.18),0 18px 55px rgba(0,0,0,.62)}.btn-primary:hover{border-color:rgba(229,9,20,.35);box-shadow:0 26px 80px rgba(229,9,20,.22),0 26px 80px rgba(0,0,0,.72)}.hero-trailer{margin-top:12px;border-radius:var(--radius2);overflow:hidden;border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.45);box-shadow:0 22px 70px rgba(0,0,0,.65);position:relative;transform:translateZ(0)}.hero-trailer::before{content:"";position:absolute;inset:-30px;background:radial-gradient(circle,rgba(229,9,20,.22),transparent 62%);filter:blur(45px);z-index:0;pointer-events:none}.hero-trailer .ratio{position:relative;padding-bottom:56.25%;height:0;z-index:1}.hero-trailer iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.hero-right{display:flex;justify-content:center;align-items:flex-start;position:relative}.poster-wrap{width:min(390px,74vw);border-radius:var(--radius2);overflow:hidden;border:1px solid rgba(255,255,255,.10);box-shadow:0 30px 120px rgba(0,0,0,.78);background:rgba(0,0,0,.55);position:relative;transform:translateY(6px);animation:floatPoster 5.5s ease-in-out infinite}@keyframes floatPoster{0%,100%{transform:translateY(6px)}50%{transform:translateY(-6px)}}.poster-wrap img{width:100%;height:auto;display:block;transition:transform .45s ease,filter .45s ease}.poster-wrap:hover img{transform:scale(1.05);filter:contrast(1.06) saturate(1.06)}.poster-wrap::after{content:"";position:absolute;inset:-30px;background:radial-gradient(circle,rgba(255,0,0,.18),transparent 70%);filter:blur(60px);z-index:-1}.page{width:100%;padding:12px 0 70px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:22px 0 10px;padding:0 var(--padX)}.section-title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:900;letter-spacing:.2px}.section-title::before{content:"";width:6px;height:18px;border-radius:99px;background:var(--accent);box-shadow:0 0 18px rgba(229,9,20,.35)}.section-sub{color:rgba(255,255,255,.62);font-size:12px;font-weight:800;margin-top:6px}.row{position:relative}.rail{display:flex;gap:16px;overflow-x:auto;padding:10px var(--padX) 26px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;cursor:grab;user-select:none;overscroll-behavior-x:contain}.rail:active{cursor:grabbing}.rail::-webkit-scrollbar{height:8px}.rail::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.12);border-radius:999px}.row::before,.row::after{content:"";position:absolute;top:0;bottom:0;width:90px;pointer-events:none;z-index:2}.row::before{left:0;background:linear-gradient(to right,rgba(5,5,5,1),rgba(5,5,5,0))}.row::after{right:0;background:linear-gradient(to left,rgba(5,5,5,1),rgba(5,5,5,0))}.arrow{position:absolute;top:45%;transform:translateY(-50%);width:52px;height:104px;border-radius:18px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.50);backdrop-filter:blur(10px);color:#fff;cursor:pointer;z-index:3;display:flex;align-items:center;justify-content:center;font-weight:900;transition:transform .16s ease,border-color .16s ease,filter .16s ease,opacity .16s ease;opacity:0}.row:hover .arrow{opacity:1}.arrow:hover{transform:translateY(-50%) scale(1.04);border-color:rgba(229,9,20,.28);filter:brightness(1.07)}.arrow.left{left:14px}.arrow.right{right:14px}.card{position:relative;flex:0 0 270px;height:395px;border-radius:var(--radius2);overflow:hidden;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,0.10);background:rgba(0,0,0,0.25);box-shadow:var(--shadow2);transform:translateZ(0);scroll-snap-align:start;transition:transform .30s ease,box-shadow .30s ease,border-color .30s ease;will-change:transform;touch-action:pan-y}.card img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.card:hover{transform:scale(1.10);z-index:10;border-color:rgba(229,9,20,.22);box-shadow:0 34px 110px rgba(0,0,0,.82),0 0 34px rgba(229,9,20,.14)}.overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:12px;background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.07));opacity:0;transition:opacity .22s ease}.card:hover .overlay{opacity:1}.ctitle{font-weight:900;font-size:13px;line-height:1.2;text-shadow:0 10px 25px rgba(0,0,0,.85)}.cmeta{margin-top:6px;color:rgba(255,255,255,.82);font-size:12px;font-weight:800;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);font-weight:900;font-size:11px}.badge.imdb{border-color:rgba(245,197,24,.25);background:rgba(245,197,24,.12)}.badge .imdbtag{background:#f5c518;color:#000;padding:2px 6px;border-radius:6px;font-size:11px}.cbtn{margin-top:10px;width:fit-content;padding:8px 12px;border-radius:12px;background:linear-gradient(135deg,rgba(229,9,20,.95),rgba(170,0,0,.95));font-weight:900;border:1px solid rgba(255,255,255,0.10);box-shadow:0 12px 35px rgba(229,9,20,.18)}.preview{position:fixed;z-index:5000;width:460px;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.72);backdrop-filter:blur(12px);box-shadow:0 34px 120px rgba(0,0,0,.88),0 0 34px rgba(229,9,20,.16);transform:translateY(10px) scale(.985);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}.preview.show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.preview .ratio{position:relative;padding-bottom:56.25%;height:0;background:#000}.preview iframe,.preview .poster{position:absolute;inset:0;width:100%;height:100%;border:0}.preview .poster{object-fit:cover;display:block;filter:contrast(1.03) saturate(1.05);transform:scale(1.02)}.preview .pinfo{padding:12px 12px 12px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.55));border-top:1px solid rgba(255,255,255,.08)}.preview .ptitle{font-weight:900;font-size:14px;line-height:1.2}.preview .pmeta{color:rgba(255,255,255,.74);font-weight:900;font-size:12px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.preview .pill2{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);font-size:11px;font-weight:900;color:rgba(255,255,255,.86)}.preview .actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.pbtn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;font-weight:900;text-decoration:none;transition:transform .14s ease,filter .14s ease,border-color .14s ease;cursor:pointer;user-select:none;white-space:nowrap}.pbtn:hover{transform:translateY(-1px);filter:brightness(1.06);border-color:rgba(229,9,20,.25)}.pbtn.primary{background:linear-gradient(135deg,rgba(229,9,20,.95),rgba(170,0,0,.95));border-color:rgba(255,255,255,.10);box-shadow:0 18px 45px rgba(229,9,20,.16)}footer{padding:28px var(--padX) calc(42px + var(--safeBottom));text-align:center;color:rgba(255,255,255,.60);border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.35);backdrop-filter:blur(10px)}@keyframes shine{from{left:-60%}to{left:130%}}@media (max-width:1200px){:root{--padX:26px}.hero-inner{grid-template-columns:1fr}.arrow{display:none}.card{flex-basis:230px;height:335px}.row::before,.row::after{width:56px}.preview{width:410px}}@media (max-width:840px){:root{--padX:16px}.menu{display:none}.hamburger{display:inline-flex}.nav{gap:10px;padding:12px var(--padX)}.nav-left{flex:1 1 100%}.nav-right{flex:1 1 100%;justify-content:space-between}.search{width:100%;min-width:0}.pill{display:none}}@media (max-width:720px){.card{flex-basis:165px;height:245px;border-radius:22px}.row::before,.row::after{width:34px}.preview{display:none}.poster-wrap{animation:none;width:min(360px,86vw)}.hero{min-height:auto;padding:18px 0 18px}.hero-left{padding:18px}.hero-actions .btn{flex:1 1 auto}.hero-actions .btn-primary{flex:1 1 100%}}@media (prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important;scroll-behavior:auto !important}}