*{margin:0;padding:0;box-sizing:border-box}
:root{--bg:#0b0b1a;--card:#111128;--card-h:#1a1a3a;--text:#f0f0ff;--dim:#6a6a8a;--r:#ff6b6b;--y:#feca57;--b:#48dbfb;--p:#ff9ff3;--g:#54a0ff;--gr:#00d2a0;--gold:#ffd700}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh;overflow-x:hidden}
a{text-decoration:none;color:inherit}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:linear-gradient(var(--r),var(--b));border-radius:3px}

/* 全局动画背景 */
body::before{content:'';position:fixed;inset:0;background:radial-gradient(ellipse at 15% 40%,rgba(255,107,107,.06) 0%,transparent 50%),radial-gradient(ellipse at 85% 15%,rgba(72,219,251,.06) 0%,transparent 50%),radial-gradient(ellipse at 50% 90%,rgba(255,159,243,.05) 0%,transparent 50%);pointer-events:none;z-index:0}

/* 入场动画 */
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes shimmer{0%{background-position:-200% center}100%{background-position:200% center}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}

/* 顶部 */
.hero{position:relative;z-index:1;padding:50px 20px 35px;text-align:center;background:linear-gradient(180deg,rgba(255,107,107,.04) 0%,rgba(72,219,251,.04) 50%,transparent 100%);border-bottom:1px solid rgba(255,255,255,.04);animation:fadeIn .8s ease}
.hero h1{font-size:2.5rem;font-weight:900;background:linear-gradient(90deg,var(--r),var(--y),var(--b),var(--p),var(--r));background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:shimmer 5s linear infinite}
.hero p{color:var(--dim);margin-top:10px;font-size:.95rem}
.hero .stats{display:flex;gap:35px;justify-content:center;margin-top:22px;flex-wrap:wrap}
.hero .stat .num{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,var(--b),var(--p));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.hero .stat .label{font-size:.72rem;color:var(--dim);margin-top:2px}

/* 搜索 */
.search-wrap{max-width:460px;margin:28px auto 0;position:relative}
.search-wrap input{width:100%;padding:14px 22px 14px 44px;border-radius:28px;border:2px solid rgba(72,219,251,.25);background:rgba(255,255,255,.03);color:var(--text);font-size:.9rem;outline:none;transition:all .3s;backdrop-filter:blur(10px)}
.search-wrap input:focus{border-color:var(--b);box-shadow:0 0 25px rgba(72,219,251,.12);transform:scale(1.02)}
.search-wrap::before{content:"🔍";position:absolute;left:16px;top:50%;transform:translateY(-50%)}

/* 分类 */
.tags{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px}
.tags a{padding:7px 18px;border-radius:20px;font-size:.78rem;font-weight:600;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);color:var(--dim);transition:all .3s cubic-bezier(.4,0,.2,1)}
.tags a:hover{transform:translateY(-2px) scale(1.05)}
.tags a:nth-child(1):hover,.tags a:nth-child(1).active{background:linear-gradient(135deg,var(--r),#ee5a24);color:#fff;border-color:transparent;box-shadow:0 4px 15px rgba(255,107,107,.3)}
.tags a:nth-child(2):hover,.tags a:nth-child(2).active{background:linear-gradient(135deg,var(--b),var(--g));color:#fff;border-color:transparent;box-shadow:0 4px 15px rgba(72,219,251,.3)}
.tags a:nth-child(3):hover,.tags a:nth-child(3).active{background:linear-gradient(135deg,var(--p),#f368e0);color:#fff;border-color:transparent;box-shadow:0 4px 15px rgba(255,159,243,.3)}
.tags a:nth-child(4):hover,.tags a:nth-child(4).active{background:linear-gradient(135deg,var(--y),#ff9f43);color:#fff;border-color:transparent;box-shadow:0 4px 15px rgba(254,202,87,.3)}
.tags a:nth-child(5):hover,.tags a:nth-child(5).active{background:linear-gradient(135deg,var(--gr),#10ac84);color:#fff;border-color:transparent;box-shadow:0 4px 15px rgba(0,210,160,.3)}

/* 网格 */
.grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:22px;padding:35px 25px;max-width:1200px;margin:0 auto}
@media(max-width:600px){.grid{grid-template-columns:repeat(2,1fr);gap:14px;padding:20px 12px}}

/* 卡片 */
.card{background:var(--card);border-radius:16px;overflow:hidden;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(255,255,255,.05);position:relative;animation:fadeUp .6s ease backwards}
.card:nth-child(1){animation-delay:.05s}.card:nth-child(2){animation-delay:.1s}.card:nth-child(3){animation-delay:.15s}.card:nth-child(4){animation-delay:.2s}.card:nth-child(5){animation-delay:.25s}.card:nth-child(6){animation-delay:.3s}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--r),var(--y),var(--b),var(--p));opacity:0;transition:opacity .3s;z-index:2}
.card:hover::before{opacity:1}
.card:hover{transform:translateY(-8px) scale(1.03);box-shadow:0 20px 50px rgba(0,0,0,.5),0 0 25px rgba(72,219,251,.08);border-color:rgba(72,219,251,.25);background:var(--card-h)}
.card .img-wrap{position:relative;overflow:hidden}
.card img{width:100%;height:250px;object-fit:cover;object-position:center top;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.card:hover img{transform:scale(1.1)}
.card .img-wrap .tag{position:absolute;top:10px;left:10px;padding:4px 11px;border-radius:11px;font-size:.68rem;font-weight:700;letter-spacing:.5px;background:rgba(0,0,0,.75);color:#fff;backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.1)}
.card .img-wrap .tag.hot{background:linear-gradient(135deg,var(--r),#ee5a24);border:none}
.card .img-wrap .tag.new{background:linear-gradient(135deg,var(--b),var(--g));border:none}
.card .img-wrap .tag.hidden{background:linear-gradient(135deg,var(--p),#f368e0);border:none}
.card .info{padding:13px 15px}
.card .name{font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card .meta{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.card .price{font-size:.95rem;font-weight:800;background:linear-gradient(90deg,var(--gold),#ff9f43);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.card .eps{color:var(--dim);font-size:.72rem}

/* ===== Netflix 详情页 ===== */
.nf-banner{position:relative;width:100%;height:550px;overflow:hidden;display:flex;align-items:flex-end;animation:fadeIn 1s ease}
.nf-banner-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:brightness(.55) saturate(1.2);transform:scale(1.05);transition:transform 8s ease}
.nf-banner:hover .nf-banner-img{transform:scale(1.12)}
.nf-banner-overlay{position:absolute;inset:0;background:linear-gradient(0deg,var(--bg) 0%,rgba(11,11,26,.8) 35%,rgba(11,11,26,.2) 70%,transparent 100%)}
.nf-banner-content{position:relative;z-index:1;padding:50px 35px;max-width:700px;animation:fadeUp 1s .3s ease backwards}
.nf-badge{display:inline-block;padding:5px 14px;border-radius:5px;background:linear-gradient(135deg,var(--r),#ee5a24);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:1.5px;margin-bottom:14px;box-shadow:0 4px 15px rgba(255,107,107,.3)}
.nf-title{font-size:3.2rem;font-weight:900;margin-bottom:12px;text-shadow:0 4px 30px rgba(0,0,0,.6);line-height:1.1}
.nf-meta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;color:rgba(255,255,255,.7);font-size:.88rem;margin-bottom:16px}
.nf-desc{color:rgba(255,255,255,.8);font-size:.92rem;line-height:1.8;max-width:580px;margin-bottom:22px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nf-buttons{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.nf-buttons .buy-btn{width:auto;padding:14px 32px;display:inline-block;font-size:.95rem}
.nf-buttons .wx-box{margin:0;padding:12px 18px;display:inline-block}
.nf-buttons .wx-box .label{display:inline;font-size:.82rem;margin:0}
.nf-buttons .wx-box .id{display:inline;font-size:.95rem}

/* 详情区 */
.nf-detail{max-width:880px;margin:0 auto;padding:40px 22px;animation:fadeUp .8s .5s ease backwards}
.nf-section{margin-bottom:32px}
.nf-section h3{font-size:1.05rem;font-weight:700;margin-bottom:14px;padding-left:14px;border-left:3px solid;background:linear-gradient(90deg,var(--b),var(--p));-webkit-background-clip:text;-webkit-text-fill-color:transparent;border-image:linear-gradient(180deg,var(--b),var(--p)) 1}
.nf-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.nf-info-item{padding:13px 15px;border-radius:12px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);transition:all .3s}
.nf-info-item:hover{background:rgba(72,219,251,.05);border-color:rgba(72,219,251,.2);transform:translateY(-2px)}
.nf-label{display:block;font-size:.72rem;color:var(--dim);margin-bottom:3px;text-transform:uppercase;letter-spacing:.5px}
.nf-value{font-size:.92rem;font-weight:600}
.nf-cast{display:flex;flex-wrap:wrap;gap:9px}
.nf-cast-item{padding:8px 16px;border-radius:20px;font-size:.82rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);transition:all .3s}
.nf-cast-item:hover{background:rgba(255,159,243,.1);border-color:rgba(255,159,243,.3);transform:scale(1.05)}
.nf-full-desc{color:rgba(255,255,255,.75);font-size:.92rem;line-height:2;text-align:justify}
.nf-price-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;padding:22px;border-radius:14px;background:linear-gradient(135deg,rgba(255,107,107,.06),rgba(72,219,251,.06));border:1px solid rgba(255,255,255,.06)}
.nf-price-amount{font-size:2.2rem;font-weight:900;background:linear-gradient(90deg,var(--gold),#ff9f43);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.nf-price-unit{font-size:.82rem;color:var(--dim)}
.nf-price-tags{display:flex;gap:8px;flex-wrap:wrap}
.nf-tag{padding:5px 12px;border-radius:14px;font-size:.72rem;font-weight:600;background:rgba(0,210,160,.08);color:var(--gr);border:1px solid rgba(0,210,160,.25)}

/* 购买按钮 */
.buy-btn{display:block;width:100%;padding:16px;margin-top:12px;border-radius:14px;font-size:1rem;font-weight:700;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}
.buy-btn::after{content:'';position:absolute;top:50%;left:50%;width:0;height:0;background:rgba(255,255,255,.15);border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}
.buy-btn:hover::after{width:300px;height:300px}
.buy-btn.qq{background:linear-gradient(135deg,#1e90ff,var(--b));color:#fff;box-shadow:0 8px 25px rgba(72,219,251,.25)}
.buy-btn.qq:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 35px rgba(72,219,251,.4)}
.wx-box{margin-top:18px;padding:16px;text-align:center;background:rgba(0,210,160,.05);border:1px dashed rgba(0,210,160,.25);border-radius:12px}
.wx-box .label{font-size:.78rem;color:var(--dim);margin-bottom:5px}
.wx-box .id{font-size:1.15rem;font-weight:700;color:var(--gr);cursor:pointer;user-select:all;transition:all .2s}
.wx-box .id:hover{text-shadow:0 0 15px rgba(0,210,160,.5)}
.wx-box .tip{font-size:.68rem;color:var(--dim);margin-top:5px}
.nf-bottom{max-width:880px;margin:0 auto;padding:0 22px 40px}
.nf-bottom .buy-btn{width:100%}

/* 底部 */
.footer{position:relative;z-index:1;text-align:center;padding:35px 20px;margin-top:40px;color:var(--dim);font-size:.78rem;border-top:1px solid rgba(255,255,255,.04)}
.footer .logo{font-size:1.1rem;font-weight:800;margin-bottom:8px;background:linear-gradient(90deg,var(--r),var(--y),var(--b),var(--p));-webkit-background-clip:text;-webkit-text-fill-color:transparent}

/* 响应式 */
@media(max-width:600px){.nf-banner{height:420px}.nf-banner-content{padding:30px 18px}.nf-title{font-size:2rem}.nf-desc{font-size:.82rem}.nf-info-grid{grid-template-columns:1fr 1fr}.nf-banner-img{object-position:center 20%}}   
/* 顶部导航 */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:14px 4%;background:linear-gradient(180deg,rgba(11,11,26,.9) 0%,transparent 100%);backdrop-filter:blur(8px)}
.nav-logo{font-size:1.3rem;font-weight:900;background:linear-gradient(90deg,var(--r),var(--b));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.nav-right input{padding:8px 16px;border-radius:20px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05);color:var(--text);font-size:.82rem;outline:none;width:160px;transition:all .3s}
.nav-right input:focus{width:220px;border-color:var(--b);box-shadow:0 0 15px rgba(72,219,251,.2)}

/* 横向滚动行 */
.row{margin:40px 0;position:relative;z-index:1}
.row h2{font-size:1.2rem;font-weight:700;margin:0 0 14px 4%;display:flex;align-items:center;gap:8px}
.row h2::before{content:'';width:4px;height:18px;border-radius:2px;background:linear-gradient(180deg,var(--r),var(--b))}
.row-scroll{display:flex;gap:10px;overflow-x:auto;padding:10px 4% 20px;scroll-behavior:smooth;-ms-overflow-style:none;scrollbar-width:none}
.row-scroll::-webkit-scrollbar{display:none}

/* 横向行里的卡片（覆盖 grid 样式） */
.row-scroll .card{flex:0 0 220px;border-radius:10px}
.row-scroll .card img{width:100%;height:124px;object-fit:cover;border-radius:10px}
.row-scroll .card:hover{transform:scale(1.15) translateY(-6px);z-index:20}
.card-hover{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:12px;background:linear-gradient(transparent 40%,rgba(0,0,0,.9));border-radius:10px;opacity:0;transition:opacity .3s}
.card:hover .card-hover{opacity:1}
.card-hover .title{font-size:.85rem;font-weight:700}
.card-hover .meta{font-size:.72rem;color:var(--b)}   