:root{
  --green:#8ec63f;
  --green-deep:#5d8d1f;
  --green-soft:#eaf5d8;
  --ink:#1d2417;
  --ink-2:#5a6450;
  --paper:#fbfdf6;
  --line:#e1ebd1;
  --radius:18px;
  --shadow:0 14px 34px rgba(52,74,20,.12);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,sans-serif;
  background:var(--paper);
  color:var(--ink);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 18px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* 顶部导航 */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(251,253,246,.94);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.header-inner{display:flex;align-items:center;gap:14px;padding:10px 18px;max-width:1180px;margin:0 auto}
.brand{display:flex;align-items:center;gap:9px;flex-shrink:0}
.brand img{height:32px;width:auto;border-radius:8px}
.brand span{font-weight:800;font-size:17px;letter-spacing:.5px}
.nav-scroll{flex:1;overflow-x:auto;scrollbar-width:none}
.nav-scroll::-webkit-scrollbar{display:none}
.nav-list{display:flex;gap:4px;white-space:nowrap;list-style:none}
.nav-list a{
  display:block;padding:7px 11px;font-size:13.5px;color:var(--ink-2);
  border-radius:999px;transition:background .25s,color .25s;
}
.nav-list a:hover,.nav-list a:focus{background:var(--green-soft);color:var(--green-deep)}

/* 首屏 */
.hero{
  position:relative;overflow:hidden;
  padding:52px 0 40px;
  background:linear-gradient(160deg,#f3fae4 0%,#fbfdf6 55%,#eef7dd 100%);
}
.hero-grid{display:grid;gap:34px;align-items:center}
.hero h1{font-size:29px;line-height:1.35;letter-spacing:-.5px}
.hero h1 em{font-style:normal;color:var(--green-deep)}
.hero-sub{margin-top:14px;color:var(--ink-2);font-size:15px;max-width:34em}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;list-style:none}
.hero-tags li{
  font-size:12.5px;padding:5px 12px;border-radius:999px;
  background:#fff;border:1px solid var(--line);color:var(--green-deep);
}
.dl-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:13px 24px;border-radius:999px;font-size:15px;font-weight:700;
  border:1px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;
}
.btn-android{background:var(--green);color:#20300a;box-shadow:0 10px 22px rgba(142,198,63,.36)}
.btn-android:hover{transform:translateY(-2px);box-shadow:0 14px 26px rgba(142,198,63,.46)}
.btn-ios{background:#fff;color:var(--ink);border-color:var(--line)}
.btn-ios:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.hero-note{margin-top:14px;font-size:12.5px;color:#8b9484}

/* 倾斜卡片曲线区 */
.curve{position:relative;height:400px;margin-top:8px}
.curve-card{
  position:absolute;width:132px;border-radius:14px;overflow:hidden;
  box-shadow:var(--shadow);border:3px solid #fff;
  transition:transform .35s ease;
}
.curve-card img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/4}
.curve-card:hover{transform:translateY(-10px) rotate(0deg) scale(1.04);z-index:9}
.c1{left:0;top:44px;transform:rotate(-11deg)}
.c2{left:15%;top:8px;transform:rotate(-7deg)}
.c3{left:31%;top:52px;transform:rotate(-2deg)}
.c4{left:47%;top:0;transform:rotate(4deg)}
.c5{left:64%;top:38px;transform:rotate(9deg)}
.c6{right:0;top:82px;transform:rotate(13deg)}

/* 通用区块 */
.section{padding:56px 0}
.section-alt{background:#f5faec}
.sec-head{max-width:660px;margin-bottom:30px}
.sec-kicker{
  display:inline-block;font-size:12px;letter-spacing:2px;
  color:var(--green-deep);font-weight:700;margin-bottom:8px;
}
.sec-head h2{font-size:23px;line-height:1.4}
.sec-head p{margin-top:10px;color:var(--ink-2);font-size:14.5px}

/* 内容形态卡片 */
.type-grid{display:grid;gap:18px}
.type-card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:22px;box-shadow:0 6px 18px rgba(52,74,20,.05);
}
.type-card h3{font-size:16.5px;margin-bottom:8px}
.type-card p{font-size:14px;color:var(--ink-2)}
.type-num{
  display:inline-flex;align-items:center;justify-content:center;
  width:30px;height:30px;border-radius:10px;background:var(--green-soft);
  color:var(--green-deep);font-weight:800;font-size:13px;margin-bottom:12px;
}

/* 竖图墙 */
.poster-wall{
  display:grid;grid-template-columns:repeat(2,1fr);gap:14px;
}
.poster{
  position:relative;border-radius:14px;overflow:hidden;background:#e8eedd;
  box-shadow:0 10px 24px rgba(52,74,20,.12);
}
.poster img{width:100%;aspect-ratio:3/4;object-fit:cover;transition:transform .5s ease}
.poster:hover img{transform:scale(1.05)}
.poster figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:22px 12px 10px;
  font-size:13px;font-weight:700;color:#fff;
  background:linear-gradient(to top,rgba(18,26,10,.82),rgba(18,26,10,0));
}

/* 排行榜 */
.rank-list{list-style:none;display:grid;gap:12px}
.rank-item{
  display:flex;align-items:center;gap:14px;background:#fff;
  border:1px solid var(--line);border-radius:14px;padding:12px;
}
.rank-item img{width:58px;height:78px;object-fit:cover;border-radius:9px;flex-shrink:0}
.rank-item .no{
  font-size:19px;font-weight:800;color:#c3d6a4;width:26px;text-align:center;flex-shrink:0;
}
.rank-item .no.top{color:var(--green-deep)}
.rank-meta h3{font-size:15px}
.rank-meta p{font-size:12.5px;color:var(--ink-2);margin-top:2px}

/* 追剧日历 */
.calendar-row{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
.day-col{
  min-width:104px;flex:0 0 auto;background:#fff;border:1px solid var(--line);
  border-radius:14px;padding:14px 10px;text-align:center;
}
.day-col strong{display:block;font-size:13px;color:var(--green-deep)}
.day-col span{display:block;font-size:12px;color:var(--ink-2);margin-top:6px}
.day-col.today{background:var(--green);border-color:var(--green)}
.day-col.today strong,.day-col.today span{color:#20300a}

/* 流程 */
.steps{display:grid;gap:14px;counter-reset:step}
.step{
  position:relative;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:18px 20px 18px 62px;
}
.step::before{
  counter-increment:step;content:counter(step);
  position:absolute;left:18px;top:18px;width:30px;height:30px;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;background:var(--green-soft);color:var(--green-deep);
  font-weight:800;font-size:13px;
}
.step h3{font-size:15px;margin-bottom:5px}
.step p{font-size:13.5px;color:var(--ink-2)}

/* 功能列表 */
.feature-list{list-style:none;display:grid;gap:12px}
.feature-list li{
  display:flex;gap:12px;background:#fff;border:1px solid var(--line);
  border-radius:14px;padding:15px 18px;font-size:14px;color:var(--ink-2);
}
.feature-list b{color:var(--ink)}

/* 双栏图文 */
.split{display:grid;gap:24px;align-items:center}
.split-img{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.split-img img{width:100%;object-fit:cover}
.split-text h2{font-size:22px;margin-bottom:12px}
.split-text p{font-size:14.5px;color:var(--ink-2);margin-bottom:10px}

/* FAQ */
.faq{display:grid;gap:10px}
.faq details{
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px;
}
.faq summary{
  cursor:pointer;font-weight:700;font-size:14.5px;list-style:none;
  display:flex;justify-content:space-between;gap:10px;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"＋";color:var(--green-deep);font-weight:700}
.faq details[open] summary::after{content:"－"}
.faq p{font-size:13.5px;color:var(--ink-2);margin-top:10px}

/* 证书 */
.cert-strip{display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}
.cert{
  background:#fff;border:1px dashed #cfe0b2;border-radius:14px;
  padding:18px;text-align:center;
}
.cert strong{display:block;font-size:14px;margin-bottom:4px}
.cert span{font-size:12px;color:var(--ink-2)}

/* CTA */
.cta{
  background:linear-gradient(140deg,#20300a,#3f5b14);
  border-radius:24px;padding:38px 26px;text-align:center;color:#f2f9e4;
}
.cta h2{font-size:22px;margin-bottom:10px}
.cta p{font-size:14px;color:#cfdda9;max-width:34em;margin:0 auto 22px}
.cta .dl-row{justify-content:center}

/* 搜索词 */
.search-words{padding:34px 0;border-top:1px solid var(--line)}
.search-words h2{font-size:14px;color:var(--ink-2);margin-bottom:12px}
.word-cloud{display:flex;flex-wrap:wrap;gap:8px}
.word-cloud a{
  font-size:12.5px;padding:5px 11px;border-radius:999px;
  background:#f1f7e6;color:#6e7f52;
}

/* 页脚 */
.site-footer{
  border-top:1px solid var(--line);padding:24px 0 30px;
  font-size:12px;color:#9aa38f;
}
.footer-inner{display:flex;flex-direction:column;gap:8px}
.site-footer a{color:#8b9484;text-decoration:underline}
.site-footer a:hover{color:var(--green-deep)}

/* 复制弹框 */
.modal{
  position:fixed;inset:0;z-index:99;display:none;
  align-items:center;justify-content:center;padding:20px;
  background:rgba(20,30,10,.5);
}
.modal.open{display:flex}
.modal-box{
  background:#fff;border-radius:18px;padding:24px;max-width:400px;width:100%;
  box-shadow:0 20px 50px rgba(0,0,0,.25);
}
.modal-box p{font-size:14px;margin-bottom:14px;line-height:1.6}
.copy-field{
  display:flex;gap:8px;border:1px solid var(--line);border-radius:10px;
  padding:8px 10px;align-items:center;background:#f8fbf2;
}
.copy-field input{
  flex:1;border:0;background:transparent;font-size:12.5px;color:var(--ink);
  outline:none;min-width:0;
}
.copy-field button{
  border:0;background:var(--green);color:#20300a;font-weight:700;
  padding:7px 13px;border-radius:8px;font-size:13px;cursor:pointer;
}
.modal-close{
  display:block;width:100%;margin-top:14px;padding:10px;
  border:1px solid var(--line);background:#fff;border-radius:10px;
  font-size:13.5px;color:var(--ink-2);cursor:pointer;
}

@media(min-width:768px){
  .hero{padding:68px 0 52px}
  .hero h1{font-size:36px}
  .hero-sub{font-size:16px}
  .type-grid{grid-template-columns:repeat(2,1fr)}
  .poster-wall{grid-template-columns:repeat(3,1fr);gap:18px}
  .rank-list{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .cert-strip{grid-template-columns:repeat(4,1fr)}
  .section{padding:70px 0}
  .sec-head h2{font-size:27px}
  .curve{height:470px}
  .curve-card{width:158px}
}
@media(min-width:1024px){
  .hero-grid{grid-template-columns:1.08fr .92fr;gap:44px}
  .hero h1{font-size:42px}
  .curve{height:520px}
  .curve-card{width:176px}
  .type-grid{grid-template-columns:repeat(4,1fr)}
  .poster-wall{grid-template-columns:repeat(5,1fr)}
  .rank-list{grid-template-columns:repeat(3,1fr)}
  .steps{grid-template-columns:repeat(4,1fr)}
  .split{grid-template-columns:1fr 1fr;gap:44px}
  .split-text h2{font-size:26px}
  .cta h2{font-size:28px}
}