:root{
  --bg:#12101c;
  --panel:#1a1728;
  --panel2:#1e1a30;
  --main1:#ff7a45;
  --main2:#ff4d8d;
  --aux1:#7a5cff;
  --accent:#ff9a6b;
  --accent2:#ffb347;
  --text:#e8e6f0;
  --sub:#b8b2cc;
  --weak:#8a84a0;
  --line:rgba(255,255,255,.06);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
  line-height:1.6;
  overflow-x:hidden;
}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px;}

/* header */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(18,16,28,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.header-inner{
  display:flex;align-items:center;gap:18px;
  padding:12px 0;
}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.brand img{height:34px;width:34px;border-radius:9px;object-fit:cover;}
.brand-name{font-size:19px;font-weight:800;letter-spacing:.5px;background:linear-gradient(90deg,var(--main1),var(--main2));-webkit-background-clip:text;background-clip:text;color:transparent;}
.main-nav{display:flex;gap:16px;flex-wrap:wrap;font-size:14px;color:var(--sub);}
.main-nav a:hover{color:var(--accent);}
.header-cta{margin-left:auto;display:flex;align-items:center;gap:12px;}
.search-box{
  background:var(--panel2);border:1px solid var(--line);border-radius:20px;
  padding:7px 14px;font-size:13px;color:var(--weak);min-width:150px;
}
.btn-download{
  display:inline-block;
  background:linear-gradient(90deg,var(--main1),var(--main2));
  color:#fff;font-weight:700;font-size:14px;
  padding:9px 20px;border-radius:22px;
  border:none;cursor:pointer;white-space:nowrap;
  transition:transform .25s,box-shadow .25s;
}
.btn-download:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(255,77,141,.35);}

/* hero */
.hero{padding:34px 0 10px;position:relative;}
.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(600px 300px at 15% 0%,rgba(122,92,255,.22),transparent 70%),
             radial-gradient(600px 300px at 85% 10%,rgba(255,77,141,.16),transparent 70%);
}
.hero-inner{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;}
.hero-kicker{
  display:inline-block;font-size:12px;font-weight:700;color:var(--accent2);
  border:1px solid rgba(255,179,71,.4);border-radius:20px;padding:4px 14px;margin-bottom:16px;
}
.hero h1{font-size:40px;line-height:1.25;font-weight:800;letter-spacing:.5px;}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--main1),var(--main2));-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero p.lead{margin-top:16px;color:var(--sub);font-size:15px;max-width:520px;}
.hero-actions{display:flex;align-items:center;gap:14px;margin-top:26px;flex-wrap:wrap;}
.btn-ghost{
  display:inline-block;border:1px solid rgba(255,255,255,.18);
  color:var(--text);font-size:14px;padding:9px 20px;border-radius:22px;
  transition:border-color .25s,color .25s;
}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent);}
.hero-note{font-size:12px;color:var(--weak);}
.hero-shots{position:relative;height:400px;}
.shot{
  position:absolute;border-radius:16px;overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 20px 45px rgba(0,0,0,.5);
  transition:transform .4s;
}
.shot img{width:100%;height:100%;object-fit:cover;}
.shot-a{width:56%;height:330px;left:0;top:0;z-index:3;transform:rotate(-3deg);}
.shot-b{width:44%;height:250px;right:0;top:40px;z-index:2;transform:rotate(4deg);}
.shot-c{width:40%;height:190px;right:26px;bottom:0;z-index:4;transform:rotate(-2deg);}
.hero-shots:hover .shot-a{transform:rotate(-1deg) translateY(-6px);}
.hero-shots:hover .shot-b{transform:rotate(2deg) translateY(-6px);}
.hero-shots:hover .shot-c{transform:rotate(0) translateY(-6px);}

/* 下载引导条 */
.download-bar{
  margin-top:26px;
  border-radius:16px;padding:16px 22px;
  background:linear-gradient(100deg,rgba(255,122,69,.22),rgba(255,77,141,.2),rgba(122,92,255,.22));
  border:1px solid rgba(255,122,69,.35);
  display:flex;align-items:center;gap:16px;
  position:relative;overflow:hidden;
}
.download-bar::after{
  content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.16),transparent);
  animation:sweep 3s linear infinite;
}
@keyframes sweep{to{left:120%;}}
.download-bar .bar-icon{
  width:44px;height:44px;border-radius:12px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:22px;
  background:linear-gradient(135deg,var(--main1),var(--main2));
}
.download-bar .bar-text{flex:1;min-width:0;}
.download-bar strong{font-size:15px;}
.download-bar p{font-size:12.5px;color:var(--sub);margin-top:2px;}

/* section 通用 */
.section{padding:44px 0;}
.section-head{display:flex;align-items:baseline;gap:14px;margin-bottom:20px;flex-wrap:wrap;}
.section-head h2{font-size:22px;font-weight:800;}
.section-head .sub{font-size:13px;color:var(--weak);}

/* 排行榜 + 每日更新 */
.two-col{display:grid;grid-template-columns:1fr 1.25fr;gap:22px;}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px;}
.tab{
  font-size:12.5px;padding:6px 14px;border-radius:18px;
  color:var(--sub);background:var(--panel2);cursor:pointer;
  border:1px solid transparent;transition:all .2s;
}
.tab.active{background:linear-gradient(90deg,var(--main1),var(--main2));color:#fff;font-weight:700;}
.rank-list{list-style:none;display:flex;flex-direction:column;gap:10px;}
.rank-item{display:flex;align-items:center;gap:12px;padding:7px 8px;border-radius:10px;transition:background .2s,transform .2s;}
.rank-item:hover{background:rgba(255,122,69,.08);transform:translateX(4px);}
.rank-no{width:22px;font-weight:800;font-size:15px;color:var(--weak);text-align:center;flex-shrink:0;}
.rank-item:nth-child(1) .rank-no{color:#ffb347;}
.rank-item:nth-child(2) .rank-no{color:#c9d6e4;}
.rank-item:nth-child(3) .rank-no{color:#ff9a6b;}
.rank-cover{width:42px;height:56px;border-radius:8px;overflow:hidden;flex-shrink:0;}
.rank-cover img{width:100%;height:100%;object-fit:cover;}
.rank-info{flex:1;min-width:0;}
.rank-info .name{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rank-info .meta{font-size:11.5px;color:var(--weak);}
.rank-score{font-size:13px;font-weight:700;color:var(--accent2);flex-shrink:0;}

.update-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.update-card{position:relative;border-radius:12px;overflow:hidden;cursor:pointer;border:1px solid var(--line);transition:transform .3s;}
.update-card:hover{transform:translateY(-4px) scale(1.02);}
.update-card img{width:100%;aspect-ratio:3/4;object-fit:cover;}
.update-card .cap{
  position:absolute;left:0;right:0;bottom:0;
  padding:20px 8px 8px;font-size:12px;
  background:linear-gradient(transparent,rgba(10,8,18,.92));
}
.update-card .cap span{display:block;color:var(--accent);font-size:11px;}
.tag-new{
  position:absolute;top:6px;left:6px;z-index:2;
  font-size:10px;font-weight:700;color:#fff;padding:2px 7px;border-radius:6px;
  background:linear-gradient(90deg,var(--main1),var(--main2));
  animation:blink 1.6s ease-in-out infinite;
}
@keyframes blink{50%{opacity:.6;}}

/* 分类 */
.cat-layout{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;}
.cat-card{
  position:relative;border-radius:14px;overflow:hidden;
  aspect-ratio:4/5;border:1px solid var(--line);
  transition:transform .35s,box-shadow .35s;
}
.cat-card img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.cat-card:hover{transform:translateY(-6px);box-shadow:0 14px 30px rgba(0,0,0,.45);}
.cat-card:hover img{transform:scale(1.1);}
.cat-name{
  position:absolute;left:0;right:0;bottom:0;padding:22px 10px 10px;
  font-size:13px;font-weight:600;
  background:linear-gradient(transparent,rgba(10,8,18,.92));
}
.cat-name small{display:block;font-size:11px;color:var(--accent2);font-weight:400;}

/* 热门推荐 */
.filter-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px;}
.hot-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
.hot-card{border-radius:14px;overflow:hidden;background:var(--panel);border:1px solid var(--line);transition:transform .3s,box-shadow .3s;cursor:pointer;}
.hot-card:hover{transform:translateY(-5px);box-shadow:0 16px 32px rgba(0,0,0,.4);}
.hot-cover{position:relative;aspect-ratio:3/4;overflow:hidden;}
.hot-cover img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.hot-card:hover .hot-cover img{transform:scale(1.08);}
.badge-app{
  position:absolute;top:8px;left:8px;font-size:10px;font-weight:700;
  background:rgba(122,92,255,.9);color:#fff;padding:2px 7px;border-radius:6px;
}
.badge-score{
  position:absolute;top:8px;right:8px;font-size:11px;font-weight:700;
  background:rgba(12,10,20,.75);color:var(--accent2);padding:2px 7px;border-radius:6px;
}
.hot-hover{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:8px;
  background:rgba(10,8,18,.62);opacity:0;transition:opacity .3s;font-size:12px;
}
.hot-card:hover .hot-hover{opacity:1;}
.hot-hover .play{font-size:26px;color:#fff;}
.hot-hover .pill{background:linear-gradient(90deg,var(--main1),var(--main2));color:#fff;padding:4px 12px;border-radius:14px;font-size:11px;}
.hot-info{padding:10px 10px 12px;}
.hot-info .t{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hot-info .g{font-size:11.5px;color:var(--weak);margin-top:3px;}

/* 追番日历 */
.calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;}
.cal-col{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 10px;min-height:170px;}
.cal-col.today{border-color:rgba(255,122,69,.6);background:linear-gradient(180deg,rgba(255,122,69,.12),var(--panel));}
.cal-head{font-size:12.5px;font-weight:700;padding-bottom:8px;margin-bottom:8px;border-bottom:1px dashed var(--line);color:var(--sub);}
.cal-col.today .cal-head{color:var(--accent);}
.cal-item{display:flex;align-items:center;gap:7px;padding:5px 0;font-size:11.5px;}
.cal-item img{width:30px;height:30px;border-radius:6px;object-fit:cover;flex-shrink:0;}
.cal-item span{color:var(--accent);font-size:10.5px;display:block;}

/* 编辑精选 */
.pick-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;}
.feature-card{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--line);min-height:320px;}
.feature-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.feature-body{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;background:linear-gradient(transparent 30%,rgba(10,8,18,.94));}
.feature-body .lab{display:inline-block;align-self:flex-start;font-size:11px;font-weight:700;background:linear-gradient(90deg,var(--main1),var(--main2));padding:4px 12px;border-radius:14px;margin-bottom:10px;}
.feature-body h3{font-size:24px;font-weight:800;}
.feature-body p{font-size:13px;color:var(--sub);margin-top:8px;max-width:440px;}
.feature-body .btn-download{margin-top:16px;align-self:flex-start;}
.pick-list{display:flex;flex-direction:column;gap:12px;}
.pick-item{display:flex;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px;transition:transform .25s,border-color .25s;}
.pick-item:hover{transform:translateX(4px);border-color:rgba(255,122,69,.4);}
.pick-item img{width:62px;height:82px;border-radius:8px;object-fit:cover;flex-shrink:0;}
.pick-text .t{font-size:13.5px;font-weight:600;}
.pick-text .m{font-size:11.5px;color:var(--weak);margin-top:3px;}
.pick-text .m b{color:var(--accent2);font-weight:700;}

/* 动态 */
.moments{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.moment{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px;transition:transform .3s;}
.moment:hover{transform:translateY(-4px);}
.moment .who{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--sub);margin-bottom:10px;}
.moment .who i{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;background:linear-gradient(135deg,var(--aux1),var(--main2));color:#fff;}
.moment p{font-size:12.5px;color:var(--sub);}
.moment p b{color:var(--accent);font-weight:600;}
.moment .link-card{display:flex;gap:8px;align-items:center;margin-top:12px;background:var(--panel2);border-radius:10px;padding:8px;}
.moment .link-card img{width:38px;height:48px;border-radius:6px;object-fit:cover;}
.moment .link-card span{font-size:11.5px;color:var(--weak);display:block;}
.moment .link-card strong{font-size:12.5px;}

/* 分类页脚 */
.footer{border-top:1px solid var(--line);margin-top:56px;padding:30px 0 26px;font-size:12px;color:var(--weak);}
.footer-links{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:14px;}
.footer-links a:hover{color:var(--accent);}
.footer p{margin-top:4px;}

/* 悬浮按钮 */
.float-btn{
  position:fixed;right:20px;bottom:24px;z-index:60;
  width:58px;height:58px;border-radius:50%;
  background:linear-gradient(135deg,var(--main1),var(--main2));
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  color:#fff;font-size:10px;font-weight:700;line-height:1.2;cursor:pointer;
  box-shadow:0 10px 26px rgba(255,77,141,.4);
  animation:floaty 3s ease-in-out infinite;
}
.float-btn i{font-size:19px;font-style:normal;}
@keyframes floaty{50%{transform:translateY(-5px);}}

@media (max-width:1024px){
  .hero-inner{grid-template-columns:1fr;gap:26px;}
  .hero-shots{height:320px;}
  .main-nav{display:none;}
  .search-box{display:none;}
  .two-col{grid-template-columns:1fr;}
  .cat-layout{grid-template-columns:repeat(4,1fr);}
  .hot-grid{grid-template-columns:repeat(3,1fr);}
  .calendar{grid-template-columns:repeat(4,1fr);}
  .moments{grid-template-columns:repeat(2,1fr);}
  .pick-layout{grid-template-columns:1fr;}
}
@media (max-width:768px){
  .hero h1{font-size:28px;}
  .hero-shots{height:260px;}
  .shot-a{height:210px;}
  .shot-b{height:170px;}
  .shot-c{height:130px;}
  .download-bar{flex-wrap:wrap;}
  .download-bar .btn-download{width:100%;text-align:center;}
  .update-grid{grid-template-columns:repeat(2,1fr);}
  .cat-layout{grid-template-columns:repeat(2,1fr);}
  .hot-grid{grid-template-columns:repeat(2,1fr);}
  .calendar{grid-template-columns:repeat(2,1fr);}
  .moments{grid-template-columns:1fr;}
  .section{padding:32px 0;}
  .header-cta .btn-download{padding:8px 14px;font-size:13px;}
  .float-btn{width:50px;height:50px;right:14px;bottom:16px;}
}