:root{
  --ink:#15121c;
  --ink-2:#3a3348;
  --muted:#6b6478;
  --paper:#fdfbf7;
  --line:#e7e1d8;
  --accent:#ff3d6e;
  --accent-2:#ffb03a;
  --violet:#7b4dff;
  --mint:#12c2a0;
  --sky:#2f8bff;
  --radius:18px;
  --shadow:0 14px 34px rgba(24,16,40,.10);
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.75;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4,p,ul,ol{margin:0;}
ul,ol{padding:0;list-style:none;}
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 20px;}

/* ===== 顶部导航 ===== */
.site-header{
  position:sticky;top:0;z-index:60;
  backdrop-filter:blur(14px);
  background:rgba(253,251,247,.86);
  border-bottom:1px solid var(--line);
}
.header-inner{
  display:flex;align-items:center;gap:18px;
  height:64px;
}
.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.brand img{height:32px;width:auto;border-radius:8px;}
.brand-name{font-size:17px;font-weight:800;letter-spacing:.5px;}
.nav-list{display:flex;gap:4px;margin-left:auto;flex-wrap:nowrap;overflow-x:auto;}
.nav-list a{
  font-size:14px;color:var(--ink-2);padding:7px 12px;border-radius:999px;
  white-space:nowrap;transition:background .2s,color .2s;
}
.nav-list a:hover{background:#fff0f4;color:var(--accent);}
.nav-toggle{
  display:none;margin-left:auto;border:1px solid var(--line);background:#fff;
  border-radius:10px;padding:7px 12px;font-size:13px;color:var(--ink-2);cursor:pointer;
}
.header-dl{
  flex-shrink:0;background:linear-gradient(120deg,var(--accent),#ff7a49);
  color:#fff;font-size:14px;font-weight:700;padding:8px 18px;border-radius:999px;
  box-shadow:0 8px 18px rgba(255,61,110,.28);
}

/* ===== 首屏 ===== */
.hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 12% 8%, #ffe9d6 0%, transparent 46%),
    radial-gradient(circle at 88% 0%, #e6e0ff 0%, transparent 42%),
    linear-gradient(170deg,#fff7ef 0%, #fdfbf7 62%, #f4f0ff 100%);
  padding:56px 0 0;
}
.hero-grid{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:44px;align-items:center;
}
.hero-kicker{
  display:inline-flex;align-items:center;gap:8px;
  font-size:13px;font-weight:700;color:#a3341f;
  background:#fff0e2;border:1px solid #ffd9b8;
  padding:5px 14px;border-radius:999px;
}
.hero h1{
  font-size:clamp(28px,4vw,46px);
  line-height:1.28;letter-spacing:-.5px;margin:18px 0 16px;font-weight:900;
}
.hero h1 em{
  font-style:normal;
  background:linear-gradient(96deg,#ff3d6e,#ff8a3d 55%,#7b4dff);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-lead{font-size:16px;color:var(--ink-2);max-width:34em;}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 26px;}
.hero-tags span{
  font-size:13px;padding:5px 13px;border-radius:8px;
  background:#fff;border:1px solid var(--line);color:var(--ink-2);
}
.dl-group{display:flex;flex-wrap:wrap;gap:10px;}
.dl-btn{
  display:inline-flex;align-items:center;gap:8px;
  font-size:14px;font-weight:700;padding:11px 18px;border-radius:12px;
  border:1px solid var(--line);background:#fff;color:var(--ink);
  box-shadow:0 4px 12px rgba(24,16,40,.06);
  transition:transform .18s ease,box-shadow .18s ease;
}
.dl-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow);}
.dl-btn .dot{width:9px;height:9px;border-radius:50%;background:var(--mint);}
.dl-btn.android .dot{background:#5ec26a;}
.dl-btn.ios .dot{background:#3a3348;}
.dl-btn.web .dot{background:var(--sky);}
.dl-btn.harmony .dot{background:#e0453e;}
.dl-btn.primary{
  background:linear-gradient(120deg,var(--accent),#ff8a3d);
  color:#fff;border-color:transparent;
  box-shadow:0 10px 24px rgba(255,61,110,.3);
}

/* 轮播 */
.hero-stage{position:relative;}
.stage-viewport{
  position:relative;border-radius:26px;overflow:hidden;
  box-shadow:0 26px 60px rgba(40,20,70,.22);
  border:1px solid rgba(255,255,255,.7);
  background:#1a1224;
}
.slides{display:flex;transition:transform .55s cubic-bezier(.5,.1,.3,1);}
.slide{flex:0 0 100%;position:relative;}
.slide img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;}
.slide-caption{
  position:absolute;left:0;right:0;bottom:0;
  padding:38px 18px 16px;
  background:linear-gradient(to top,rgba(15,8,24,.9),rgba(15,8,24,0));
  color:#fff;
}
.slide-caption strong{display:block;font-size:17px;letter-spacing:.5px;}
.slide-caption small{font-size:12px;color:#e6dcef;}
.stage-dots{
  display:flex;gap:7px;justify-content:center;margin-top:14px;
}
.stage-dots button{
  width:26px;height:5px;border-radius:99px;border:0;padding:0;cursor:pointer;
  background:#ddd4c8;transition:background .2s,width .2s;
}
.stage-dots button[aria-current="true"]{background:var(--accent);width:34px;}

/* 跑马灯 */
.marquee{
  margin-top:44px;
  border-top:1px solid var(--line);
  background:linear-gradient(90deg,#fff1e4,#ffe9f0,#efe8ff);
  overflow:hidden;padding:12px 0;
}
.marquee-track{
  display:flex;gap:34px;width:max-content;
  animation:scroll-x 26s linear infinite;
}
.marquee-track span{
  font-size:15px;font-weight:800;letter-spacing:1px;white-space:nowrap;
  background:linear-gradient(90deg,#ff3d6e,#ff8a3d,#7b4dff,#12c2a0);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.marquee-track span::after{content:"·";margin-left:34px;color:#c9bfd6;-webkit-text-fill-color:#c9bfd6;}
@keyframes scroll-x{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ===== 通用 section 头 ===== */
.section{padding:64px 0;}
.section-head{max-width:640px;margin-bottom:30px;}
.section-head .eyebrow{
  font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;
  color:var(--accent);
}
.section-head h2{font-size:clamp(22px,2.6vw,30px);font-weight:900;margin:8px 0 10px;line-height:1.35;}
.section-head p{font-size:15px;color:var(--ink-2);}

/* 昨日爆款：横向大片 + 列表 */
.section-hot{background:linear-gradient(180deg,#fff6ef,#fdfbf7);}
.hot-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:30px;align-items:start;}
.hot-poster{
  position:relative;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);
}
.hot-poster img{aspect-ratio:3/4;object-fit:cover;width:100%;}
.hot-poster .badge{
  position:absolute;top:14px;left:14px;background:var(--accent);color:#fff;
  font-size:12px;font-weight:800;padding:5px 12px;border-radius:999px;
}
.hot-poster .meta{
  position:absolute;bottom:0;left:0;right:0;padding:30px 16px 16px;color:#fff;
  background:linear-gradient(to top,rgba(10,6,18,.92),transparent);
}
.hot-poster .meta h3{font-size:20px;font-weight:900;}
.hot-poster .meta p{font-size:12.5px;color:#e8dff2;margin-top:4px;}
.hot-list{display:grid;gap:12px;}
.hot-item{
  display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 16px;
  transition:border-color .2s,transform .2s;
}
.hot-item:hover{border-color:#ffc4d3;transform:translateX(3px);}
.hot-rank{
  font-size:18px;font-weight:900;color:#cfc5da;text-align:center;
}
.hot-item:nth-child(-n+3) .hot-rank{color:var(--accent);}
.hot-item h4{font-size:15px;font-weight:800;}
.hot-item .sub{font-size:12.5px;color:var(--muted);}
.hot-score{font-size:13px;font-weight:800;color:#b4721d;background:#fff5e0;padding:3px 9px;border-radius:8px;}

/* 完结精选 */
.section-finish{background:linear-gradient(180deg,#f6f2ff,#fdfbf7);}
.finish-grid{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:20px;
}
.finish-card{
  background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--line);
  display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;
}
.finish-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.finish-card img{width:100%;aspect-ratio:3/4;object-fit:cover;}
.finish-body{padding:13px 14px 15px;}
.finish-body h3{font-size:15px;font-weight:800;margin-bottom:5px;}
.finish-body p{font-size:12.5px;color:var(--muted);line-height:1.6;}
.chip-row{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;}
.chip-row i{
  font-style:normal;font-size:11px;padding:2px 8px;border-radius:6px;
  background:#f2eefb;color:#6a4fb8;
}
.chip-row .date{background:#eaf7f3;color:#0e8d74;}

/* 飙升热榜：时间轴 */
.section-rank{background:#11101a;color:#f3eefc;}
.section-rank .section-head .eyebrow{color:#ff8a3d;}
.section-rank .section-head p{color:#b6adc9;}
.timeline{
  position:relative;display:grid;gap:0;
  padding-left:34px;
}
.timeline::before{
  content:"";position:absolute;left:9px;top:6px;bottom:6px;width:2px;
  background:linear-gradient(#ff3d6e,#7b4dff,#12c2a0);
}
.tl-row{
  position:relative;display:grid;
  grid-template-columns:88px minmax(0,1fr) minmax(0,.8fr);
  gap:18px;align-items:center;
  padding:15px 0;border-bottom:1px dashed rgba(255,255,255,.12);
}
.tl-row::before{
  content:"";position:absolute;left:-30px;top:50%;transform:translateY(-50%);
  width:12px;height:12px;border-radius:50%;background:#151322;
  border:2px solid #ff6b8f;
}
.tl-time{font-size:15px;font-weight:800;color:#ffcf6e;letter-spacing:.5px;}
.tl-main h3{font-size:16px;font-weight:800;color:#fff;}
.tl-main p{font-size:12.5px;color:#a79dbe;}
.tl-side{font-size:12.5px;color:#c8bfdb;text-align:right;}
.tl-side strong{color:#8ef0d6;}

/* 沉浸式互动剧 */
.section-interact{background:linear-gradient(180deg,#eafaf6,#fdfbf7);}
.qa-list{display:grid;gap:12px;}
.qa{
  background:#fff;border:1px solid #d6efe8;border-radius:14px;
  padding:15px 18px;
}
.qa q{display:block;font-size:15px;font-weight:800;color:#0f7a65;quotes:none;}
.qa q::before{content:"问 / ";font-size:12px;color:#7ec9b8;letter-spacing:1px;}
.qa p{margin-top:6px;font-size:14px;color:var(--ink-2);}
.qa p::before{content:"答 / ";font-size:12px;color:#9aa8b4;letter-spacing:1px;}

/* 创作者激励：左右结构 */
.section-creator{background:linear-gradient(180deg,#fff7e6,#fdfbf7);}
.split{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:34px;align-items:center;
}
.split-media{border-radius:22px;overflow:hidden;box-shadow:var(--shadow);}
.split-media img{width:100%;aspect-ratio:3/4;object-fit:cover;}
.split-body h2{font-size:clamp(21px,2.4vw,28px);font-weight:900;line-height:1.35;margin-bottom:12px;}
.split-body > p{font-size:15px;color:var(--ink-2);margin-bottom:18px;}
.num-list{display:grid;gap:11px;}
.num-list li{
  display:grid;grid-template-columns:26px minmax(0,1fr);gap:11px;
  font-size:14px;color:var(--ink-2);
}
.num-list b{
  display:grid;place-items:center;width:24px;height:24px;border-radius:8px;
  background:#ffe9c7;color:#a4650c;font-size:12px;font-weight:900;
}

/* 用户神评墙 */
.section-comment{background:linear-gradient(180deg,#f2f6ff,#fdfbf7);}
.comment-wall{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;
}
.comment{
  background:#fff;border:1px solid #dfe7f5;border-radius:16px;padding:16px 17px;
  display:flex;gap:12px;align-items:flex-start;
}
.comment .avatar{
  width:38px;height:38px;border-radius:50%;object-fit:cover;flex-shrink:0;
  border:2px solid #fff;box-shadow:0 2px 8px rgba(30,50,100,.14);
}
.comment .who{font-size:13px;font-weight:800;color:#2b4a86;}
.comment .txt{font-size:13.5px;color:var(--ink-2);margin-top:3px;}

/* 保护与反馈：双列 */
.section-care{background:linear-gradient(180deg,#fdf3f0,#fdfbf7);}
.care-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;}
.care-panel{
  background:#fff;border:1px solid #f0ddd6;border-radius:20px;padding:24px;
}
.care-panel h2{font-size:20px;font-weight:900;margin-bottom:10px;}
.care-panel p{font-size:14px;color:var(--ink-2);}
.care-panel ul{display:grid;gap:9px;margin-top:14px;}
.care-panel li{
  font-size:13.5px;color:var(--ink-2);padding-left:18px;position:relative;
}
.care-panel li::before{
  content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;
  background:#f2a08a;
}

/* 图集 */
.gallery{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.gallery-strip{
  display:grid;grid-auto-flow:column;grid-auto-columns:150px;gap:14px;
  overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;
}
.gallery-strip figure{margin:0;scroll-snap-align:start;}
.gallery-strip img{
  width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;border:1px solid var(--line);
}
.gallery-strip figcaption{font-size:12px;color:var(--muted);margin-top:6px;text-align:center;}

/* 下载区 */
.section-download{
  background:
    radial-gradient(circle at 15% 10%,#2a1b45 0%,transparent 55%),
    radial-gradient(circle at 85% 90%,#33122a 0%,transparent 55%),
    #171321;
  color:#f4eefc;
}
.download-inner{text-align:center;max-width:900px;margin:0 auto;}
.download-inner h2{font-size:clamp(23px,3vw,34px);font-weight:900;line-height:1.35;}
.download-inner .lead{color:#b9afcd;font-size:15px;margin:12px auto 26px;max-width:36em;}
.dl-group.center{justify-content:center;}
.dl-btn.on-dark{
  background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.2);color:#fff;
}
.dl-btn.on-dark:hover{background:rgba(255,255,255,.15);}
.steps{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;
  margin-top:36px;text-align:left;
}
.step{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:14px;padding:16px 17px;
}
.step b{font-size:12px;color:#ffb03a;letter-spacing:1px;}
.step h3{font-size:15px;font-weight:800;margin:6px 0 4px;color:#fff;}
.step p{font-size:13px;color:#b6adc9;}

/* 复制弹层 */
.copy-mask{
  position:fixed;inset:0;background:rgba(12,8,20,.55);
  display:none;align-items:center;justify-content:center;z-index:200;padding:20px;
}
.copy-mask.on{display:flex;}
.copy-box{
  background:#fff;color:var(--ink);border-radius:18px;padding:24px;
  max-width:360px;width:100%;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.3);
}
.copy-box p{font-size:14px;color:var(--ink-2);}
.copy-box .link{
  margin:14px 0;padding:11px 12px;border-radius:10px;background:#f5f1ec;
  font-size:12.5px;word-break:break-all;color:#7a3fa8;border:1px dashed #d8c8e8;
}
.copy-box button{
  border:0;border-radius:10px;padding:11px 20px;font-size:14px;font-weight:800;
  background:linear-gradient(120deg,var(--accent),#ff8a3d);color:#fff;cursor:pointer;width:100%;
}
.copy-box .close{
  background:none;color:var(--muted);font-weight:600;margin-top:8px;font-size:13px;
}

/* 浮动下载 */
.float-dl{
  position:fixed;left:50%;bottom:18px;transform:translateX(-50%);
  z-index:150;display:inline-flex;align-items:center;gap:9px;
  background:linear-gradient(120deg,#ff3d6e,#ff8a3d);
  color:#fff;font-size:14px;font-weight:800;
  padding:10px 20px 10px 12px;border-radius:999px;
  box-shadow:0 12px 30px rgba(255,61,110,.4);
  transition:transform .2s;
}
.float-dl:hover{transform:translateX(-50%) translateY(-3px);}
.float-dl img{height:24px;width:24px;border-radius:7px;background:#fff;object-fit:cover;}

/* 页脚 */
.site-footer{
  background:#100e18;color:#8b8399;padding:40px 0 30px;font-size:13px;
}
.footer-top{
  display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));
  gap:28px;padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.09);
}
.footer-brand{display:flex;align-items:center;gap:9px;margin-bottom:10px;}
.footer-brand img{height:26px;border-radius:6px;}
.footer-brand span{color:#e8e2f3;font-weight:800;font-size:15px;}
.footer-col h4{font-size:13px;color:#ded6ec;font-weight:800;margin-bottom:10px;}
.footer-col a{display:block;font-size:12.5px;color:#8b8399;padding:3px 0;}
.footer-col a:hover{color:#ffb03a;}
.footer-bottom{
  display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;
  padding-top:18px;font-size:12px;color:#6f6880;
}
.footer-bottom a{color:#8b8399;}
.footer-bottom a:hover{color:#c9bfdb;}

/* ===== 断点 ===== */
@media (max-width:1023px){
  .hero{padding-top:40px;}
  .hero-grid{grid-template-columns:1fr;gap:32px;}
  .hero-stage{max-width:420px;margin:0 auto;}
  .hot-layout{grid-template-columns:1fr;}
  .hot-poster{max-width:360px;}
  .split{grid-template-columns:1fr;gap:26px;}
  .split-media{max-width:400px;margin:0 auto;}
  .care-grid{grid-template-columns:1fr;}
  .tl-row{grid-template-columns:76px minmax(0,1fr);}
  .tl-side{grid-column:2;text-align:left;}
  .footer-top{grid-template-columns:1fr 1fr;}
}
@media (max-width:767px){
  .wrap{padding:0 16px;}
  .section{padding:44px 0;}
  .nav-toggle{display:inline-block;}
  .header-dl{display:none;}
  .nav-list{
    display:none;position:absolute;top:64px;left:0;right:0;
    background:var(--paper);border-bottom:1px solid var(--line);
    flex-direction:column;padding:10px 16px 16px;gap:2px;overflow:visible;
  }
  .nav-list.open{display:flex;}
  .nav-list a{padding:10px 8px;border-radius:10px;font-size:15px;}
  .hero h1{font-size:26px;}
  .hero-lead{font-size:15px;}
  .dl-group{gap:8px;}
  .dl-btn{padding:10px 14px;font-size:13px;flex:1 1 calc(50% - 8px);justify-content:center;}
  .dl-group.center .dl-btn{flex:0 1 auto;}
  .hot-item{grid-template-columns:38px minmax(0,1fr);row-gap:4px;}
  .hot-score{grid-column:2;justify-self:start;}
  .finish-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;}
  .timeline{padding-left:26px;}
  .timeline::before{left:6px;}
  .tl-row{grid-template-columns:1fr;gap:5px;padding:13px 0;}
  .tl-row::before{left:-24px;}
  .tl-side{grid-column:1;}
  .split-body h2{font-size:21px;}
  .care-panel{padding:19px;}
  .gallery-strip{grid-auto-columns:120px;}
  .float-dl{font-size:13px;padding:9px 16px 9px 10px;bottom:12px;}
  .footer-top{grid-template-columns:1fr;}
  .footer-bottom{flex-direction:column;}
  .comment-wall{grid-template-columns:1fr;}
  .download-inner .lead{font-size:14px;}
}