:root{
    --orange:#ff7a18;
    --orange-deep:#e85d04;
    --orange-soft:#fff2e6;
    --ink:#242022;
    --ink-2:#6b6265;
    --line:#eee6e1;
    --bg:#fffaf6;
    --white:#fff;
    --green:#15a06a;
    --purple:#7a4ddb;
    --radius:16px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;
    background:var(--bg);color:var(--ink);line-height:1.7;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  img{display:block;max-width:100%}
  a{color:inherit;text-decoration:none}
  ul{list-style:none}
  .wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 18px}
  .sec{padding:64px 0}
  .sec-head{margin-bottom:26px}
  .sec-head h2{font-size:26px;letter-spacing:.3px}
  .sec-head p{color:var(--ink-2);font-size:14px;margin-top:6px}
  .tag{display:inline-block;font-size:12px;padding:2px 8px;border-radius:6px;background:var(--orange-soft);color:var(--orange-deep)}

  /* ---------- 顶部导航 ---------- */
  .site-header{
    position:sticky;top:0;z-index:60;
    background:rgba(255,255,255,.82);
    backdrop-filter:saturate(180%) blur(14px);
    -webkit-backdrop-filter:saturate(180%) blur(14px);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{display:flex;align-items:center;gap:18px;height:64px}
  .brand{display:flex;align-items:center;gap:9px;flex-shrink:0}
  .brand img{height:32px;width:auto}
  .brand span{font-size:19px;font-weight:800;color:var(--orange-deep);letter-spacing:.5px}
  .nav-links{display:none;gap:20px;font-size:14px;color:#4b4446;white-space:nowrap}
  .nav-links a:hover{color:var(--orange)}
  .nav-search{
    display:none;flex:1;max-width:240px;margin-left:auto;
    border:1px solid var(--line);background:#fdf8f4;border-radius:999px;
    padding:7px 14px;font-size:13px;color:#9a908c;outline:none;
  }
  .nav-cta{margin-left:auto;display:flex;align-items:center;gap:8px}
  .btn-main{
    display:inline-flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,var(--orange),var(--orange-deep));
    color:#fff;font-weight:700;font-size:14px;padding:10px 20px;border-radius:999px;
    box-shadow:0 6px 18px rgba(232,93,4,.28);transition:transform .2s;
    white-space:nowrap;
  }
  .btn-main:hover{transform:translateY(-2px)}
  .nav-bonus{display:none;font-size:12px;color:var(--orange-deep)}

  /* ---------- Hero ---------- */
  .hero{
    position:relative;overflow:hidden;
    background:
      radial-gradient(700px 340px at 12% 0%,rgba(255,150,60,.22),transparent 70%),
      radial-gradient(600px 300px at 92% 30%,rgba(255,190,120,.28),transparent 70%),
      var(--bg);
    padding:48px 0 60px;
  }
  .hero-grid{display:grid;grid-template-columns:1fr;gap:38px;align-items:center}
  .hero h1{font-size:30px;line-height:1.32;letter-spacing:.5px}
  .hero h1 em{font-style:normal;color:var(--orange-deep)}
  .hero-sub{color:var(--ink-2);font-size:15px;margin-top:14px;max-width:520px}
  .badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
  .badge{
    display:inline-flex;align-items:center;gap:6px;
    background:#fff;border:1px solid var(--line);border-radius:12px;
    padding:9px 16px;font-size:13px;font-weight:600;color:#3d3638;
    box-shadow:0 2px 8px rgba(60,40,20,.05);transition:.2s;
  }
  .badge:hover{border-color:var(--orange);color:var(--orange-deep);transform:translateY(-2px)}
  .badge i{font-style:normal}
  .hero-trust{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:20px}
  .qr-card{
    display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);
    border-radius:14px;padding:10px 14px;box-shadow:0 4px 14px rgba(60,40,20,.06);
  }
  .qr-card .qr-fake{
    width:64px;height:64px;border-radius:8px;flex-shrink:0;
    background:
      repeating-linear-gradient(90deg,#2b2426 0 4px,#fff 4px 8px),
      repeating-linear-gradient(0deg,#2b2426 0 4px,transparent 4px 8px);
    background-blend-mode:multiply;border:3px solid #fff;outline:1px solid #eee;
  }
  .qr-card b{display:block;font-size:14px}
  .qr-card small{color:var(--ink-2);font-size:12px}
  .trust-line{font-size:12px;color:#8a807c;line-height:1.9}
  .stats{display:flex;flex-wrap:wrap;gap:22px;margin-top:26px;padding-top:20px;border-top:1px dashed #f0ddd0}
  .stats div b{display:block;font-size:20px;color:var(--orange-deep);line-height:1.3}
  .stats div span{font-size:12px;color:var(--ink-2)}

  .hero-visual{position:relative;display:flex;justify-content:center;gap:16px}
  .phone{
    width:210px;border-radius:28px;background:#1c1719;padding:8px;
    box-shadow:0 20px 45px rgba(80,45,10,.22);position:relative;
  }
  .phone.wide{width:230px}
  .phone-screen{
    border-radius:22px;overflow:hidden;height:420px;position:relative;background:#f4f0ee;
  }
  .phone-screen .scroll-strip{
    display:flex;flex-direction:column;gap:0;animation:scrollUp 22s linear infinite;
  }
  .phone-screen .scroll-strip img{width:100%;height:auto;display:block}
  @keyframes scrollUp{
    0%{transform:translateY(0)}
    100%{transform:translateY(-50%)}
  }
  .float-bubble{
    position:absolute;background:#fff;border-radius:999px;
    padding:6px 12px;font-size:11px;font-weight:600;color:var(--orange-deep);
    box-shadow:0 6px 16px rgba(120,70,20,.16);white-space:nowrap;
  }
  .float-bubble.b1{top:10%;left:-6px}
  .float-bubble.b2{bottom:14%;right:-4px;color:#e0452f}
  .phone.mini{display:none}

  /* ---------- 通用卡片 ---------- */
  .card{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius);
    overflow:hidden;transition:transform .22s,box-shadow .22s,border-color .22s;
  }
  .card:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(120,70,20,.13);border-color:#f3d6bf}
  .cover{position:relative;aspect-ratio:2/3;overflow:hidden;background:#f3ebe6}
  .cover img{width:100%;height:100%;object-fit:cover}
  .corner{
    position:absolute;left:0;top:0;font-size:11px;font-weight:700;color:#fff;
    padding:3px 9px;border-bottom-right-radius:10px;letter-spacing:.5px;
  }
  .corner.orange{background:var(--orange-deep)}
  .corner.green{background:var(--green)}
  .corner.purple{background:var(--purple)}
  .card-body{padding:10px 11px 12px}
  .card-body h3{font-size:14px;line-height:1.4;font-weight:700}
  .card-body .author{font-size:11.5px;color:#93887f;margin-top:2px}
  .card-meta{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
  .mini-tag{font-size:10.5px;background:#fbf1e9;color:#b0692c;border-radius:5px;padding:1px 6px}
  .heat{font-size:11px;color:#e0452f;margin-top:6px}
  .state{font-size:11px;color:#8b7f79;margin-top:3px}

  /* ---------- 热门推荐 横滑 ---------- */
  .hscroll{
    display:flex;gap:14px;overflow-x:auto;padding-bottom:12px;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  }
  .hscroll::-webkit-scrollbar{height:6px}
  .hscroll::-webkit-scrollbar-thumb{background:#f0dccb;border-radius:6px}
  .hscroll > .card{flex:0 0 158px;scroll-snap-align:start}
  .hot-card{position:relative}
  .hot-card .rank-dot{
    position:absolute;right:8px;top:6px;z-index:2;background:rgba(0,0,0,.55);
    color:#fff;font-size:10px;padding:1px 7px;border-radius:999px;
  }

  /* ---------- 更新日历 ---------- */
  .days{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;margin-bottom:20px}
  .days button{
    flex:0 0 auto;border:1px solid var(--line);background:#fff;border-radius:999px;
    padding:8px 18px;font-size:13px;font-weight:600;color:#5a5153;cursor:pointer;
    transition:.2s;
  }
  .days button.active{background:var(--orange);border-color:var(--orange);color:#fff;box-shadow:0 6px 16px rgba(232,93,4,.28)}
  .grid-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
  .new-flag{
    position:absolute;right:6px;top:6px;font-size:10px;font-weight:800;
    background:var(--orange);color:#fff;padding:1px 6px;border-radius:4px;letter-spacing:.5px;
  }

  /* ---------- 排行榜 ---------- */
  .rank-cols{display:grid;grid-template-columns:1fr;gap:20px}
  .rank-col{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px}
  .rank-col h3{font-size:16px;margin-bottom:12px;display:flex;align-items:center;gap:7px}
  .rank-top{background:var(--orange-soft);border-radius:12px;padding:12px;display:flex;gap:11px;margin-bottom:12px}
  .rank-top img{width:62px;height:88px;object-fit:cover;border-radius:8px;flex-shrink:0}
  .rank-top h4{font-size:14px;line-height:1.4}
  .rank-top p{font-size:11.5px;color:#8b7f79;line-height:1.55;margin-top:5px}
  .rank-list li{
    display:flex;align-items:center;gap:9px;padding:7px 0;border-top:1px dashed #f2e6dd;font-size:13px;
  }
  .rank-list li:first-child{border-top:none}
  .num{
    width:20px;height:20px;border-radius:6px;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    font-size:11px;font-weight:800;color:#fff;background:#c9c1bc;
  }
  .num.g1{background:#ffb300}
  .num.g2{background:#a8b0bb}
  .num.g3{background:#c98b4b}
  .rank-list .t{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .rank-list .h{font-size:11px;color:#af9f96;flex-shrink:0}
  .up{font-size:10.5px;color:var(--orange-deep);font-weight:700;flex-shrink:0}

  /* ---------- 题材 ---------- */
  .genre-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
  .genre{
    background:#fff;border:1px solid var(--line);border-radius:14px;
    padding:16px 6px;text-align:center;transition:.2s;
  }
  .genre:hover{border-color:var(--orange);box-shadow:0 10px 22px rgba(232,93,4,.12);transform:translateY(-3px)}
  .genre i{font-style:normal;font-size:22px;display:block;line-height:1.3}
  .genre span{font-size:13px;font-weight:600;margin-top:4px;display:block}

  /* ---------- 完结 / 限免 ---------- */
  .tabs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
  .tabs a{
    font-size:13px;padding:6px 14px;border-radius:999px;background:#fff;
    border:1px solid var(--line);color:#5a5153;font-weight:600;
  }
  .tabs a.on{background:#fdece0;border-color:#f8c9a8;color:var(--orange-deep)}
  .countdown{font-size:10.5px;color:var(--purple);margin-top:4px;font-weight:600}

  /* ---------- 竖屏阅读体验 ---------- */
  .read-block{display:grid;grid-template-columns:1fr;gap:30px;align-items:center;
    background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px 20px}
  .read-block h2{font-size:24px}
  .read-block > div > p{color:var(--ink-2);font-size:14.5px;margin-top:10px}
  .points{margin-top:20px;display:grid;gap:14px}
  .point{display:flex;gap:12px;align-items:flex-start}
  .point .ic{font-size:20px;line-height:1.4}
  .point b{font-size:14.5px;display:block}
  .point span{font-size:13px;color:var(--ink-2)}
  .read-phone{
    width:216px;margin:0 auto;border-radius:26px;background:#1c1719;padding:7px;
    box-shadow:0 18px 40px rgba(80,45,10,.2);
  }
  .read-phone .screen{border-radius:20px;overflow:hidden;height:390px}
  .read-phone .screen .strip{animation:scrollUp 26s linear infinite}
  .read-phone .screen img{width:100%;display:block}

  /* ---------- 作者入驻 ---------- */
  .author{background:#f7f4f2;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .author-grid{display:grid;grid-template-columns:1fr;gap:30px;align-items:center}
  .author h2{font-size:24px}
  .author p.lead{color:var(--ink-2);font-size:14.5px;margin-top:10px}
  .benefits{margin-top:20px;display:grid;gap:12px}
  .benefit{background:#fff;border-radius:12px;padding:12px 16px;font-size:14px;border:1px solid #efe7e2}
  .benefit b{color:var(--orange-deep)}
  .author-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
  .btn-ghost{
    display:inline-flex;align-items:center;justify-content:center;
    border:1px solid #d9cdc5;border-radius:999px;padding:10px 20px;font-size:14px;
    font-weight:600;color:#5a5153;background:#fff;transition:.2s;
  }
  .btn-ghost:hover{border-color:var(--orange);color:var(--orange-deep)}
  .avatar-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
  .avatar-wall img{
    width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:50%;
    border:3px solid #fff;box-shadow:0 6px 16px rgba(120,80,40,.14);
  }

  /* ---------- 下载区 ---------- */
  .download{
    background:linear-gradient(135deg,var(--orange-deep),#ffa356);
    color:#fff;padding:56px 0;
  }
  .dl-grid{display:grid;grid-template-columns:1fr;gap:30px;align-items:center}
  .download h2{font-size:28px;line-height:1.35;color:#fff}
  .download p{color:#fff4e9;font-size:14.5px;margin-top:12px;max-width:520px}
  .dl-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
  .dl-btns .badge{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.45);color:#fff}
  .dl-btns .badge:hover{background:#fff;color:var(--orange-deep);border-color:#fff}
  .big-qr{
    background:#fff;color:var(--ink);border-radius:18px;padding:20px;text-align:center;
    max-width:280px;box-shadow:0 20px 40px rgba(120,50,0,.25);
  }
  .big-qr .qr-fake{
    width:100%;aspect-ratio:1/1;max-width:180px;margin:0 auto 12px;border-radius:10px;
    background:
      repeating-linear-gradient(90deg,#2b2426 0 6px,#fff 6px 12px),
      repeating-linear-gradient(0deg,#2b2426 0 6px,transparent 6px 12px);
    background-blend-mode:multiply;
  }
  .big-qr b{display:block;font-size:15px;color:var(--orange-deep)}
  .big-qr small{font-size:12px;color:var(--ink-2)}

  /* ---------- 口碑 ---------- */
  .review-grid{display:grid;grid-template-columns:1fr;gap:16px}
  .review{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}
  .review p.quote{font-size:14px;margin-top:10px;color:#453e40;line-height:1.75}
  .review .stars{color:#ffb300;font-size:14px;letter-spacing:2px}
  .reviewer{display:flex;align-items:center;gap:10px}
  .reviewer img{width:42px;height:42px;border-radius:50%;object-fit:cover}
  .reviewer b{font-size:13.5px;display:block}
  .reviewer span{font-size:11.5px;color:#a0958f}

  /* ---------- 页脚 ---------- */
  .site-footer{background:#2a2523;color:#a79e99;padding:44px 0 26px;font-size:13px}
  .foot-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
  .foot-col h4{color:#e7ded9;font-size:13px;margin-bottom:10px;font-weight:700}
  .foot-col li{margin-bottom:7px}
  .foot-col a:hover{color:var(--orange)}
  .foot-bottom{margin-top:28px;padding-top:18px;border-top:1px solid #3c3532;font-size:11.5px;line-height:2;color:#8a807b}
  .foot-bottom a{color:#a99f99;text-decoration:underline}
  .foot-bottom a:hover{color:var(--orange)}
  .foot-bottom .social{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:12px}
  .foot-bottom .social a{text-decoration:none;color:#c9bdb7}

  /* ---------- 移动悬浮条 ---------- */
  .float-bar{
    position:fixed;left:0;right:0;bottom:0;z-index:80;
    background:var(--orange-deep);color:#fff;
    display:flex;align-items:center;gap:12px;padding:10px 14px;
    box-shadow:0 -6px 20px rgba(90,40,0,.25);
    transform:translateY(110%);transition:transform .3s;
  }
  .float-bar.show{transform:translateY(0)}
  .float-bar span{font-size:12.5px;flex:1;font-weight:600;line-height:1.4}
  .float-bar a{background:#fff;color:var(--orange-deep);font-weight:800;font-size:13px;padding:8px 16px;border-radius:999px;white-space:nowrap}
  .float-bar button{background:none;border:none;color:#ffd7bb;font-size:18px;cursor:pointer;padding:0 2px}

  /* ---------- 响应式 ---------- */
  @media (min-width:768px){
    .wrap{padding:0 28px}
    .sec{padding:76px 0}
    .hero{padding:64px 0 76px}
    .hero-grid{grid-template-columns:1.05fr .95fr;gap:34px}
    .hero h1{font-size:38px}
    .hero-sub{font-size:16px}
    .grid-cards{grid-template-columns:repeat(3,1fr)}
    .genre-grid{grid-template-columns:repeat(4,1fr)}
    .rank-cols{grid-template-columns:repeat(3,1fr)}
    .review-grid{grid-template-columns:repeat(3,1fr)}
    .read-block{grid-template-columns:1.1fr .9fr;padding:38px 40px}
    .author-grid{grid-template-columns:1.1fr .9fr;gap:40px}
    .avatar-wall{grid-template-columns:repeat(3,1fr);gap:16px}
    .dl-grid{grid-template-columns:1.15fr .85fr}
    .foot-cols{grid-template-columns:repeat(3,1fr)}
    .phone.mini{display:block}
    .phone.wide{width:260px}
    .float-bar{display:none}
    .hscroll > .card{flex:0 0 172px}
  }
  @media (min-width:1024px){
    .nav-links{display:flex}
    .nav-search{display:block}
    .nav-cta{margin-left:0}
    .nav-bonus{display:block}
    .hero h1{font-size:42px}
    .phone{width:248px}
    .phone.wide{width:286px}
    .phone-screen{height:520px}
    .grid-cards{grid-template-columns:repeat(4,1fr)}
    .genre-grid{grid-template-columns:repeat(6,1fr)}
    .hscroll > .card{flex:0 0 178px}
    .read-phone{width:250px}
    .read-phone .screen{height:460px}
    .foot-cols{grid-template-columns:repeat(4,1fr)}
  }