:root{
  --forest:#2E7D5B;
  --forest-deep:#1B3A2D;
  --mint:#A8D5BA;
  --sprout:#C8E6C9;
  --paper:#F5F3E7;
  --amber:#D4A24C;
  --ink:#1B3A2D;
  --ink-soft:#4F6B5E;
  --muted:#6B8E7B;
  --radius:22px;
  --shadow:0 10px 30px rgba(27,58,45,.10);
  --shadow-hover:0 18px 42px rgba(27,58,45,.18);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC",sans-serif;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;border-radius:var(--radius);}
a{color:var(--forest);text-decoration:none;}
h1,h2,h3{font-family:"Songti SC","Source Han Serif SC","Noto Serif SC",Georgia,serif;line-height:1.35;margin:0 0 .5em;}
p{margin:0 0 1em;}
.wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 22px;}
.section{padding:64px 0;}
.section-head{max-width:720px;margin-bottom:30px;}
.section-head h2{font-size:clamp(24px,3.4vw,34px);color:var(--forest-deep);}
.section-head p{color:var(--ink-soft);margin:0;}
.eyebrow{display:inline-block;font-size:13px;letter-spacing:.16em;color:var(--forest);background:var(--sprout);padding:4px 14px;border-radius:999px;margin-bottom:14px;font-family:inherit;}

/* 导航 */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(245,243,231,.9);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(46,125,91,.14);
}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 22px;max-width:1180px;margin:0 auto;}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:19px;color:var(--forest-deep);font-family:"Songti SC",serif;}
.brand img{height:34px;width:auto;border-radius:10px;}
.nav-links{display:flex;gap:24px;list-style:none;margin:0;padding:0;font-size:15px;}
.nav-links a{color:var(--ink-soft);}
.nav-links a:hover{color:var(--forest);}
.nav-dl{
  display:inline-block;background:var(--forest);color:#fff;padding:9px 20px;border-radius:999px;font-size:14px;font-weight:600;
  box-shadow:0 8px 20px rgba(46,125,91,.28);transition:transform .2s;
}
.nav-dl:hover{transform:translateY(-2px);}

/* 首屏 */
.hero{
  background:linear-gradient(180deg,#1B3A2D 0%,#2E7D5B 46%,#A8D5BA 74%,#F5F3E7 100%);
  padding:56px 0 72px;
  color:#F5F3E7;
}
.hero-inner{max-width:1180px;margin:0 auto;padding:0 22px;}
.hero h1{font-size:clamp(28px,4.6vw,46px);color:#fff;text-shadow:0 3px 16px rgba(15,40,28,.35);max-width:16em;}
.hero-desc{color:#EAF5EC;font-size:clamp(15px,1.7vw,17px);max-width:36em;}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:24px 0 34px;}
.btn-main,.btn-ghost{display:inline-block;padding:12px 26px;border-radius:999px;font-weight:600;font-size:15px;transition:transform .2s,box-shadow .2s;}
.btn-main{background:var(--amber);color:#3A2A0C;box-shadow:0 10px 24px rgba(212,162,76,.35);}
.btn-main:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(212,162,76,.45);}
.btn-ghost{background:transparent;color:#F5F3E7;border:1.5px solid rgba(245,243,231,.7);}
.btn-ghost:hover{background:rgba(245,243,231,.14);}

/* Banner 轮播 */
.banner{position:relative;border-radius:26px;overflow:hidden;box-shadow:0 22px 50px rgba(8,26,18,.42);}
.banner-track{display:flex;transition:transform .55s ease;}
.banner-slide{min-width:100%;position:relative;aspect-ratio:16/6;}
.banner-slide img{width:100%;height:100%;object-fit:cover;border-radius:0;}
.banner-cap{
  position:absolute;left:0;right:0;bottom:0;padding:22px 26px;
  background:linear-gradient(0deg,rgba(15,42,30,.86),rgba(15,42,30,0));
  color:#F5F3E7;font-size:15px;
}
.banner-cap strong{font-family:"Songti SC",serif;font-size:19px;display:block;margin-bottom:2px;}
.banner-dots{display:flex;gap:9px;justify-content:center;margin-top:16px;}
.banner-dots button{
  width:9px;height:9px;border-radius:50%;border:0;padding:0;cursor:pointer;
  background:rgba(245,243,231,.42);transition:width .25s,background .25s;
}
.banner-dots button.is-active{width:26px;border-radius:999px;background:var(--amber);}

/* 今日推荐 横滑 */
.scroller{display:flex;gap:18px;overflow-x:auto;padding:6px 4px 18px;scroll-snap-type:x mandatory;}
.scroller::-webkit-scrollbar{height:8px;}
.scroller::-webkit-scrollbar-thumb{background:var(--mint);border-radius:999px;}
.rec-card{
  flex:0 0 178px;scroll-snap-align:start;background:#fff;border-radius:var(--radius);
  box-shadow:var(--shadow);overflow:hidden;transition:transform .25s,box-shadow .25s;
}
.rec-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:var(--shadow-hover);}
.rec-card img{aspect-ratio:3/4;width:100%;object-fit:cover;border-radius:0;}
.rec-card .rec-body{padding:12px 14px 16px;}
.rec-card h3{font-size:15px;margin:0 0 4px;color:var(--forest-deep);}
.rec-card span{font-size:12.5px;color:var(--muted);}

/* 分类六宫格 */
.grid-six{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.cat-item{
  background:var(--sprout);border-radius:var(--radius);padding:18px;min-height:104px;
  display:flex;flex-direction:column;justify-content:flex-end;transition:transform .25s,background .25s;
}
.cat-item:hover{transform:translateY(-4px);background:var(--mint);}
.cat-item strong{font-size:16px;color:var(--forest-deep);}
.cat-item span{font-size:13px;color:var(--ink-soft);}
.cat-visual{margin-top:18px;border-radius:26px;overflow:hidden;box-shadow:var(--shadow);}
.cat-visual img{width:100%;object-fit:cover;border-radius:0;}

/* 排行榜 */
.rank-wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:26px;align-items:center;}
.rank-hero{position:relative;border-radius:26px;overflow:hidden;box-shadow:var(--shadow);}
.rank-hero img{width:100%;object-fit:cover;border-radius:0;}
.rank-hero .badge{
  position:absolute;top:16px;left:16px;background:var(--amber);color:#3A2A0C;
  font-size:12.5px;font-weight:700;padding:5px 14px;border-radius:999px;
}
.rank-tabs{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap;}
.rank-tabs button{
  border:1.5px solid var(--mint);background:#fff;color:var(--forest);
  padding:8px 18px;border-radius:999px;font-size:14px;cursor:pointer;font-family:inherit;
}
.rank-tabs button.is-active{background:var(--forest);border-color:var(--forest);color:#fff;}
.rank-list{list-style:none;margin:0;padding:0;}
.rank-list li{
  display:flex;gap:14px;align-items:center;background:#fff;border-radius:18px;
  padding:11px 14px;margin-bottom:11px;box-shadow:0 6px 16px rgba(27,58,45,.07);
}
.rank-list img{width:46px;height:62px;border-radius:10px;object-fit:cover;flex:0 0 auto;}
.rank-num{font-family:"Songti SC",serif;font-size:19px;color:var(--muted);width:22px;text-align:center;flex:0 0 auto;}
.rank-list strong{display:block;font-size:14.5px;color:var(--forest-deep);}
.rank-list em{font-style:normal;font-size:12.5px;color:var(--muted);}

/* 编辑精选 */
.picks{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.pick{
  position:relative;border-radius:26px;overflow:hidden;box-shadow:var(--shadow);
  transition:transform .25s,box-shadow .25s;
}
.pick:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover);}
.pick img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:0;}
.pick-body{
  position:absolute;inset:auto 0 0 0;padding:20px 22px;color:#F5F3E7;
  background:linear-gradient(0deg,rgba(15,42,30,.9),rgba(15,42,30,0));
}
.pick-body h3{margin:0 0 4px;font-size:19px;color:#fff;}
.pick-body p{margin:0;font-size:13.5px;color:#DCEBE0;}

/* 社区 */
.community{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.post{background:#fff;border-radius:var(--radius);padding:14px;box-shadow:var(--shadow);transition:transform .25s;}
.post:hover{transform:translateY(-4px);}
.post img{aspect-ratio:1/1;width:100%;object-fit:cover;margin-bottom:12px;}
.post strong{display:block;font-size:14.5px;color:var(--forest-deep);margin-bottom:2px;}
.post span{font-size:13px;color:var(--ink-soft);}

/* App 展示 */
.app-band{
  background:linear-gradient(180deg,var(--sprout),#EAF4EC);
  border-radius:32px;padding:44px 34px;box-shadow:var(--shadow);
}
.app-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;}
.app-text h2{font-size:clamp(23px,3vw,31px);color:var(--forest-deep);}
.app-text ul{margin:0 0 22px;padding-left:1.15em;color:var(--ink-soft);}
.app-text li{margin-bottom:8px;}
.phones{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end;}
.phones img{border-radius:24px;box-shadow:0 16px 34px rgba(27,58,45,.22);transition:transform .35s;}
.app-band.is-in .phones img{transform:translateY(-8px);}
.dl-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:18px;}
.dl-pill{
  display:inline-block;padding:11px 24px;border-radius:999px;border:1.6px solid var(--forest);
  color:var(--forest);font-weight:600;font-size:14.5px;background:#fff;transition:background .2s,color .2s,transform .2s;
}
.dl-pill:hover{background:var(--forest);color:#fff;transform:translateY(-2px);}
.dl-pill.solid{background:var(--forest);color:#fff;}
.dl-pill.solid:hover{background:var(--forest-deep);}
.dl-note{font-size:12.5px;color:var(--muted);margin:10px 0 0;}

/* 功能小卡 */
.feature-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:30px;}
.f-card{
  display:flex;gap:16px;align-items:center;background:#fff;border-radius:var(--radius);
  padding:16px;box-shadow:var(--shadow);
}
.f-card img{width:96px;height:96px;object-fit:cover;border-radius:16px;flex:0 0 auto;}
.f-card h3{margin:0 0 4px;font-size:16px;color:var(--forest-deep);}
.f-card p{margin:0;font-size:13.5px;color:var(--ink-soft);}

/* FAQ */
.faq{display:grid;grid-template-columns:260px 1fr;gap:36px;align-items:start;}
.faq-art img{border-radius:24px;box-shadow:var(--shadow);}
.acc-item{background:#fff;border-radius:18px;margin-bottom:12px;box-shadow:0 6px 16px rgba(27,58,45,.07);overflow:hidden;}
.acc-btn{
  width:100%;text-align:left;background:none;border:0;padding:16px 18px;font-size:15px;
  color:var(--forest-deep);font-family:inherit;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;
}
.acc-btn::after{content:"＋";color:var(--forest);font-size:17px;transition:transform .25s;}
.acc-btn.is-open::after{content:"－";}
.acc-panel{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.acc-panel p{margin:0;padding:0 18px 16px;font-size:14px;color:var(--ink-soft);}
.acc-progress{height:3px;background:var(--sprout);}
.acc-progress i{display:block;height:100%;width:0;background:var(--forest);transition:width .3s;}

/* 底部 */
.site-footer{
  background:var(--forest-deep);color:#BFD5C6;padding:36px 0 30px;font-size:13px;
}
.footer-inner{max-width:1180px;margin:0 auto;padding:0 22px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;}
.site-footer a{color:#CFE3D5;}
.site-footer .meta{color:#8FAC9D;font-size:12px;}
.site-footer .meta time{color:#8FAC9D;}

/* 移动底栏 */
.tabbar{display:none;}

@media (max-width:1024px){
  .nav-links{display:none;}
  .rank-wrap{grid-template-columns:1fr;}
  .app-grid{grid-template-columns:1fr;}
  .faq{grid-template-columns:1fr;}
  .faq-art{max-width:300px;}
  .community{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:768px){
  .section{padding:44px 0;}
  .grid-six{grid-template-columns:repeat(2,1fr);}
  .picks{grid-template-columns:1fr;}
  .feature-cards{grid-template-columns:1fr;}
  .community{grid-template-columns:1fr 1fr;}
  .rec-card{flex:0 0 148px;}
  .banner-slide{aspect-ratio:16/9;}
  .app-band{padding:28px 18px;border-radius:24px;}
  .phones{grid-template-columns:1fr 1fr;gap:10px;}
  body{padding-bottom:62px;}
  .tabbar{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;
    background:#fff;border-top:1px solid var(--mint);box-shadow:0 -4px 18px rgba(27,58,45,.08);
  }
  .tabbar a{
    flex:1;text-align:center;padding:8px 0 10px;font-size:12px;color:var(--muted);
  }
  .tabbar a b{display:block;font-size:17px;line-height:1.3;font-weight:400;}
  .tabbar a.is-on{color:var(--forest);font-weight:600;}
  .hero{padding:36px 0 52px;}
  .site-footer{padding:28px 0 80px;}
  .footer-inner{flex-direction:column;align-items:flex-start;}
}